Skip to content

anthony-robin/hyperloop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

70 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Hyperloop ๐Ÿš„

Speed up your new Rails 8.0 projects with a preconfigured set of tools !

Usage

If you don't have yet the project cloned, fetch it from remote URL:

$ rails new myapp -m https://raw.githubusercontent.com/anthony-robin/hyperloop/master/template.rb

If you already have it cloned:

$ rails new myapp -m hyperloop/template.rb

Warning

Some arguments from the rails new command might not be compatible with the template.

Generator will ask several questions to refine configuration:

  • What port the server should run (default: 3000)
  • What language the app should handle (default: en)
  • Is an authentication needed ? (default: true)
    • If yes, does an admin dashboard is needed ? (default: true)

Note

You can specify the port directly in the generator command using --port=4000 and avoid the first question prompt:

$ rails new myapp -m hyperloop/template.rb -- --port=4000

Wait for the end of the installer, then start it with:

$ bin/dev

Tools

Gems

In production:

In development:

  • annotaterb to print model database structure (opinionated configuration)
  • bullet to track N+1 queries
  • chusaku to print routes URL above controller actions
  • letter_opener_web to intercept emails and print them in browser (unless --skip-action-mailer flag)
  • rubocop and its extensions for coding conventions (opinionated) (unless --skip-rubocop flag)
  • ribbonit to display Ruby and Rails information
  • spark to reload browser page on HTML, CSS, JS modifications.

In test (unless --skip-test flag):

  • simplecov to get code coverage of the app
  • ffaker to generate fake data (seed database)

Frontend

  • PicoCSS as a minimalist prototyping framework.
  • daisyUI as a minimalist framework on top of Tailwind (required --css=tailwind flag option).

Features

  • Rails authentication comes with session, registration and reset password features preconfigured as well as related mailers.

  • A minimal admin dashboard is created if requested on generator prompt. This feature includes the pretender gem to sign in as another user to manage it easily.

  • SEO is preconfigured to work in any pages by default and title/description can be specified directly in seo.{locale}.yml file.

  • Default browser confirm modal as been replaced with a pretty and friendly one following excellent gorails tutorial.

  • Database is seed with default users corresponding to each access level.

  • If using postgres adapter, database can be dockerized using:

    $ docker-compose up -d

Locales

Project is compatible for english and french locales out of the box.

Roadmap

See Github project for coming roadmap.

Credits

Hyperloop is inspired by:

Thank you :)

About

Speed up your new Rails project with a preconfigured set of tools ๐Ÿš„

Topics

Resources

License

Stars

Watchers

Forks

Contributors