denny / ShinyCMS-ruby

ShinyCMS is an open-source CMS built in Ruby on Rails, with support for themes, plugins, and cloud hosting. (There is also a Perl version: www.github.com/denny/ShinyCMS)
https://shinycms.org
GNU General Public License v2.0
33 stars 11 forks source link
akismet aws blog cloud-hosting cms heroku mjml newsletters open-source plugins postgres rails6 rds recaptcha ruby ruby-on-rails ruby3 s3 themes

ShinyCMS

ShinyCMS is an open-source content management system built in Ruby on Rails, with support for themes, plugins, and cloud hosting.

ShinyCMS is primarily intended for use by professional web developers, as a platform to build content-managed websites on top of. It provides a number of features 'out of the box', which all integrate into its easy-to-use admin area. Access to admin features is managed by a highly granular ACL system.

Web developers can also add custom functionality by writing their own plugins. A number of helpers and concerns are provided to help you build new features quickly, and with a consistent look-and-feel to the rest of the system.

The current version of ShinyCMS runs on Ruby 3.0 and Rails 6.1

Features

Planned features

Documentation

Installation and configuration

Please start by reading the installation guide (tl,dr).

Demo site

Theme templates and sample data for a demo site are provided, so you can try all of the CMS features without doing any data-entry work first. You can run the demo site locally or on a free Heroku plan.

System dependencies

You will need a webserver, a Postgres-compatible database server, and a Sidekiq-compatible caching service (e.g. Redis).

You will need a mail server if you intend to enable any of the features that send emails; user registrations, reply notifications, etc. Anything supported by ActionMailer should work.

All other supported external services are optional. If you add config details for them (in ENV / .env* files / Heroku config) then they will be used, otherwise the related CMS features will be unavailable or will have reduced functionality.

Ruby and Rails versions

ShinyCMS requires Rails 6.1 and Ruby 2.7 or later. The project generally uses the most recent stable release of both Ruby and Rails (currently Ruby 3.0.1 and Rails 6.1.3).

Contributing

Everyone is encouraged to help improve this project! Here are a few ways you can help:

See contributing to ShinyCMS for more information.

Code of Conduct

This project has a Code of Conduct, which is intended to make using ShinyCMS, or contributing to it, a harassment-free experience for everybody involved - regardless of who they are and what they do or don't know.

Please read and follow the code of conduct - thank you.

Copyright and Licensing

ShinyCMS is copyright 2009-2021 Denny de la Haye - https://denny.me

ShinyCMS is free software; you can redistribute it and/or modify it under the terms of the GPL (version 2 or later). There are copies of both v2 and v3 of the GPL in docs/Licensing, or you can read them online: https://opensource.org/licenses/gpl-2.0 / https://opensource.org/licenses/gpl-3.0

ShinyCMS includes code from other open source and free software projects, which have their own licensing terms; please read the licensing docs for more details.

Current Status

CircleCI Codecov Dependabot Security

Code Climate maintainability Code Climate maintainability CodeFactor Grade CodeBeat (code quality)

GitHub code size GitHub repo size GitHub