SensibleRails
🚀 Focus on building stuff and not the setup. 🚀
Vision
To make the adoption of Ruby on Rails easier for use in projects.
Philosophy
Keep with the Boring Rails practice and way of doing things.
With some added nuances for developer happiness.
And Reactiveness... we'll let Russ explain.
What's in the box
-
SimpleTails a TailwindCSS prose implementation heavily inspired by SimpleCSS.
-
ViteRuby for lightning fast server starts, instant page update in development thanks to HMR nd much more
-
Anyway Config to keep your Ruby configuration sane
-
ViewComponents - A framework for creating reusable, testable & encapsulated view components, built to integrate seamlessly with Ruby on Rails.
-
LookBook - A tool to help browse, develop, test & document ViewComponents in Ruby on Rails apps
-
Tailwind Config Viewer - A local UI tool for visualizing your Tailwind CSS configuration file.
-
Avo - Avo uses familiar configuration to build up the features you need from most applications. The result is a full-featured customer-facing app that works out of the box, ready to be used to your end-users.
NB: Avo will likely be removed for an OSS option or self rolled solution
-
overcommit is a tool to manage and configure Git hooks.
Getting Started
Native Development
- Click the Use this template button to create a clone of this repo in your Github account.
- Once you've git cloned your repo to your computer, run the following;
cd <app_name>
./bin/respawn
Then run the following to start the application.
./bin/dev
Docker Development
We use DIP - Docker Interaction Program to make working with docker simpler.
Install DIP
gem install dip
Provision the containers & start the application
dip provision && dip up web
Configuration
You can chnange the app name in config/sensibles.yml
Using overcommit
overcommit a fully configurable and extendable Git hook manager is included. When enabled the hooks will run each time a git commit is made. If any of the checks fail the commit will be ignored and the erros will be shown.
Enable overcommit
overcommit --sign && overcommit --sign pre-commit
Run overcommit
overcommit --run
The above pre commit hooks have been defined in .overcommit.yml
Troubleshooting Overcommit
click for more
If you get errors try running the following anf then the above steps.
overcommit --uninstall
Alternatives
See a list of alternative Rails 7 templates here
Contributions
Contributions welcome 🤗
Contributions aligning with the project vision are welcome.