Pages is a Ruby on Rails-based CMS tailored for Rails developers.
The box does not include any themes or templates. Rather, it aims to make it as easy as possible to build your site from scratch, harnessing all the power of Rails and it's assets pipeline.
To get started, you'll need a Rails app. A freshly generated one will do. Add it to your Gemfile:
Next, run the installer (which will ask you a few questions), and then the migrations.
bin/rails g pages_core:install bin/rake db:migrate
You should now be ready to fire up the server and visit /admin to create your first user account.
Pages is all about the
Page model - a site is a tree of Pages. Every
page has a template (which corresponds to the files in
app/views/pages/templates). Here's a sample template:
<h1> <%= @page.name %> </h1> <% if @page.excerpt? %> <%= @page.excerpt.to_html %> <% end %> <% if @page.body? %> <%= @page.body.to_html %> <% end %> <% if @page.pages.any? %> <h2> More stuff </h2> <ul> <% @page.pages.each do |p| %> <li> <%= link_to p.name, page_path(locale, p) %> </li> <% end %> </ul> <% end %>
Every template has one or more blocks of content, configured in
in the example above are the defaults, but this is fully customizable
along with other optional features like images, file uploads, tags and more.
You'll also notice that the page links have a locale param. Pages does support localizations:
@page.localize(:en).name # => "Hello" @page.localize(:fr).name # => "Bonjour"
All the helpers and controllers will automatically set the locale for you and it propagates across relations, so you'll rarely end up interacting with it directly in this fashion.
Pages is licensed under the MIT License.