Fundamentals

You are here:
Important! This page contains archived/old information and is not to be considered current.

Basic Rock Concepts

Nearly everything you see in Rock is developed as something we call a "block". A block can live on one or more pages. Behind the scenes blocks communicate with the database, the REST API, and sometimes the page or other blocks on the page. The details of fetching and saving data is detailed in the developer guides.

Designers will likely focus on the UX and UI markup of blocks while developers will focus on the functionality, logic and data the blocks handle.

In addition to blocks and pages there are things we call "Sites" and "Layouts" in Rock. They control the overall look and themeing of the websites you create.

Be sure you've read the Designing and Building Websites Using Rock guide. There you'll learn the difference between sites, layouts, pages and blocks as well as how to add them to Rock.

Other Core Technologies

Like most modern systems, Rock stands on the shoulders of giants to get things done. We've baked several technologies into Rock so make your life easier.

We rely heavily on the CSS and markup standards of Bootstrap 3, the scalable vector icons of Font Awesome 5, and obviously the power of jQuery for rich UI and DOM manipulation, so you will want a strong understanding of these before you start trying to design, layout or create markup in Rock.

Environment Setup

We took cost into consideration when we were deciding which platform to develop Rock on. With the free Express editions of Microsoft's Visual Studio and SQL Server, developing for Rock does not have to cost you anything.

Developers should use either their Visual Studio 2013 or the free Visual Studio 2013 Express for Web. You'll also need either the Express (free) or Standard edition of Microsoft SQL Server 2014 or newer.

Next you should use the Rockit (/'rɑːkɪt/) to create a custom Rock SDK just for you. There we'll create a zip file with a sample project specific to your organization/domain so you'll have a very clear pattern to follow for all your future development.

Designers that only want to use their favorite image and HTML editing tools are free to do so, but at some point they may want to see the efforts of their labor inside a working Rock installation. So we encourage them to work with a developer to use a Rock test system or take the plunge to set up their own.

Subscribe To Our Newsletter

Rock is a project of the Spark Development Network.