Made by the team at BigBinary, this is a base project to quickly spin up a Rails application built with opinions of BigBinary style of working.
First clone this repo.
Then install the Node.js version v18.12
which we have specified inside the .node-version
file of this repo., using the following command:
nvm install
Make sure that yarn is installed with it as well in your system.
After yarn
is installed, install the Node.js and Rails dependencies and also
seed the database, by running:
./bin/setup
Start the server by executing following command.
bundle exec rails server -p 3000
Visit http://localhost:3000 and login with email oliver@example.com
and
password welcome
.
In BigBinary we follow the above mentioned style of installing dependencies using ./bin/setup
and then running the servers manually.
If that doesn't work in your system for some reason, then you can opt into following the instructions mentioned
here to use
docker for development.
Let's say that the project name is Pump
. Execute the command below to replace
all occurrences of Wheel
with Pump
.
perl -pi -w -e 's/Wheel/Pump/g;' $(git ls-files)
- Uses Tailwind CSS.
rake setup
to set sensible sample data including useroliver@example.com
with passwordwelcome
.- Uses devise.
- Uses Honeybadger.
- Uses slim for cleaner syntax over erb and better performance over haml.
- Uses ActiveAdmin.
- Uses Sidekiq.
- Intercepts all outgoing emails in non production environment using gem mail_interceptor.
- Uses SemaphoreCI for continuous testing.
- Uses PostgreSQL.
- Content compression via Rack::Deflater.
- Auto-formats Ruby code with rubocop.
- Auto-formats JavaScript and CSS code with prettier.
- Letter opener gem for development.
neetoDeploy Review is enabled on this application. Thus all PRs will have a review
app and once the PR is merged to main, it will be deployed to production instance. The neetoDeploy instance for Wheel
is hosted in neeto-engineering
organization.
wheel is maintained by BigBinary. BigBinary is a software consultancy company. We build web and mobile applications using Ruby on Rails, React.js, React Native and Node.js.