Panda CMS
Caution
This application is being developed in public. It is not ready for production use. If you'd like to try it out (or help with documentation), please contact @jfi by emailing bamboo@pandacms.io.
Panda CMS is the CMS we always wanted. 🐼
Better websites, on Rails.
Read more about the project... ✨
🐼 is grown from our work at Otaina, a small group of freelancers. We needed something that could handle websites large and small – but where we could expand it too. We sent our first websites live in March 2024.
Usage
New applications
To create a new Rails app, run the command below, replacing demo
with the name of the application you want to create:
rails new demo $(curl -fsSL https://raw.githubusercontent.com/pandacms/generator/main/.railsrc) -m https://raw.githubusercontent.com/pandacms/generator/main/template.rb
cd
into your directory (e.g. demo
), and you'll see rails db:migrate
and rails db:seed
have already been run for you.
Then run bin/dev
. You'll see a basic website has automatically been created for you at http://localhost:3000/
The easiest way for you to get started is to visit http://localhost:3000/admin and login with your GitHub credentials. As the first user, you'll automatically have an administrator account created.
When you're ready to configure further, you can set your own configuration in config/initializers/panda_cms.rb
. Make sure to turn off the default github
account creation options!
Existing applications
Add the following to Gemfile
:
gem "panda_cms"
For initial setup, run:
bundle install
rails generate panda_cms:install
rails db:schema:load
rails db:seed
You may want to check this does not re-run any of your existing seeds!
If you don't want to use GitHub to login (or are at a URL other than http://localhost:3000/), you'll need to configure a user provider (in config/initializers/panda_cms.rb
), and then set your user's admin
attribute to true
once you've first tried to login.
Gotchas
This is a non-exhuastive list (there will be many more):
- To date, this has only been tested with Rails 7.1 and 7.2.
- There may be conflicts if you're not using Tailwind CSS on the frontend. Please report this.
Contributing
We welcome contributions.
See our Contributing Guidelines
License
The gem is available as open source under the terms of the BSD-3-Clause License.
Copyright © 2024, Panda Software Limited.