Roots is a WordPress starter theme based on HTML5 Boilerplate & Bootstrap that will help you make better themes.
- Source: https://github.com/roots/roots
- Homepage: http://roots.io/
- Documentation: http://roots.io/docs/
- Twitter: @rootswp, @retlehs, @swalkinshaw, @Foxaii, @c2foryou
- Newsletter: Subscribe
- Forum: http://discourse.roots.io/
- Grunt for compiling LESS to CSS, checking for JS errors, live reloading, concatenating and minifying files, versioning assets, and generating lean Modernizr builds
- Bower for front-end package management
- HTML5 Boilerplate
- Bootstrap
- Organized file and template structure
- ARIA roles and microformats
- Theme activation
- Theme wrapper
- Cleaner HTML output of navigation menus
- Posts use the hNews microformat
- Multilingual ready and over 30 available community translations
Install the Soil plugin to enable additional features:
- Root relative URLs
- Nice search (
/search/query/
) - Cleaner output of
wp_head
and enqueued assets markup - Image captions use
<figure>
and<figcaption>
Clone the git repo - git clone git://github.com/roots/roots.git
- or download it and then rename the directory to the name of your theme or website.
If you don't use Bedrock, you'll need to add the following to your wp-config.php
on your development installation:
define('WP_ENV', 'development');
Reference the theme activation documentation to understand everything that happens once you activate Roots.
Edit lib/config.php
to enable or disable theme features and to define a Google Analytics ID.
Edit lib/init.php
to setup navigation menus, post thumbnail sizes, post formats, and sidebars.
Roots uses Grunt for compiling LESS to CSS, checking for JS errors, live reloading, concatenating and minifying files, versioning assets, and generating lean Modernizr builds.
If you'd like to use Bootstrap Sass, look at the Roots Sass fork.
Unfamiliar with npm? Don't have node installed? Download and install node.js before proceeding.
From the command line:
- Install
grunt-cli
globally withnpm install -g grunt-cli
. - Navigate to the theme directory, then run
npm install
. npm will look atpackage.json
and automatically install the necessary dependencies. It will also automatically runbower install
, which installs front-end packages defined inbower.json
.
When completed, you'll be able to run the various Grunt commands provided from the command line.
grunt dev
— Compile LESS to CSS, concatenate and validate JSgrunt watch
— Compile assets when file changes are madegrunt build
— Create minified assets that are used on non-development environments
- Roots 101 — A guide to installing Roots, the files, and theme organization
- Theme Wrapper — Learn all about the theme wrapper
- Build Script — A look into how Roots uses Grunt
- Roots Sidebar — Understand how to display or hide the sidebar in Roots
Everyone is welcome to help contribute and improve this project. There are several ways you can contribute:
- Reporting issues (please read issue guidelines)
- Suggesting new features
- Writing or refactoring code
- Fixing issues
- Replying to questions on the forum
Use the Roots Discourse to ask questions and get support.