WordPress starter theme with a modern development workflow
Built with ❤️
Official Website | Documentation | Change Log
Sage is an open source project and completely free to use.
However, the amount of effort needed to maintain and develop new features and products within the Roots ecosystem is not sustainable without proper financial backing. If you have the capability, please consider donating using the links below:
Sage is a productivity-driven WordPress starter theme with a modern development workflow.
The main
branch currently tracks Sage 10 which is in active development. Looking for Sage 9 or the latest Sage 10 beta release? See releases.
- Harness the power of Laravel and its available packages thanks to Acorn.
- Clean, efficient theme templating utilizing Laravel Blade.
- Lightning fast frontend development workflow powered by Bud.
- Out of the box support for TailwindCSS.
Make sure all dependencies have been installed before moving on:
Install Sage using Composer from your WordPress themes directory (replace your-theme-name
below with the name of your theme):
# @ app/themes/ or wp-content/themes/
$ composer create-project roots/sage your-theme-name
To install the latest development version of Sage, add dev-main
to the end of the command:
$ composer create-project roots/sage your-theme-name dev-main
themes/your-theme-name/ # → Root of your Sage based theme
├── app/ # → Theme PHP
│ ├── Providers/ # → Service providers
│ ├── View/ # → View models
│ ├── admin.php # → Theme customizer setup
│ ├── filters.php # → Theme filters
│ ├── helpers.php # → Helper functions
│ └── setup.php # → Theme setup
├── bootstrap/ # → Acorn bootstrap
│ ├── cache/ # → Acorn cache location (never edit)
│ └── app.php # → Acorn application bootloader
├── config/ # → Config files
│ ├── app.php # → Application configuration
│ ├── assets.php # → Asset configuration
│ ├── filesystems.php # → Filesystems configuration
│ ├── logging.php # → Logging configuration
│ └── view.php # → View configuration
├── composer.json # → Autoloading for `app/` files
├── composer.lock # → Composer lock file (never edit)
├── public/ # → Built theme assets (never edit)
├── functions.php # → Theme bootloader
├── index.php # → Theme template wrapper
├── node_modules/ # → Node.js packages (never edit)
├── package.json # → Node.js dependencies and scripts
├── resources/ # → Theme assets and templates
│ ├── fonts/ # → Theme fonts
│ ├── images/ # → Theme images
│ ├── scripts/ # → Theme javascript
│ ├── styles/ # → Theme stylesheets
│ └── views/ # → Theme templates
│ ├── components/ # → Component templates
│ ├── forms/ # → Form templates
│ ├── layouts/ # → Base templates
│ └── partials/ # → Partial templates
├── screenshot.png # → Theme screenshot for WP admin
├── storage/ # → Storage location for cache (never edit)
├── style.css # → Theme meta information
├── vendor/ # → Composer packages (never edit)
└── bud.config.js # → Bud configuration
Edit app/setup.php
to enable or disable theme features, setup navigation menus, post thumbnail sizes, and sidebars.
- Run
yarn
from the theme directory to install dependencies - Update
bud.config.js
with your local dev URL
yarn dev
— Compile assets when file changes are made, start Browsersync sessionyarn build
— Compile assets for production
Contributions are welcome from everyone. We have contributing guidelines to help you get started.
Help support our open-source development efforts by becoming a sponsor.
Keep track of development and community news.
- Participate on the Roots Discourse
- Follow @rootswp on Twitter
- Read and subscribe to the Roots Blog
- Subscribe to the Roots Newsletter
- Listen to the Roots Radio podcast