Skip to content

fagnerpereira/lazy_rails

Repository files navigation

LazyRails

LazyRails simplifies Rails project creation and tool installation, addressing two common pain points:

  1. Simplifying the verbose command for creating new Rails apps.
  2. Customizing the default tools installed with a new Rails project.

Features

  • Interactive guide for creating new Rails projects
  • On-the-fly addition and installation of popular gems and tools. No more open documentation and copy-paste commands.

Installation

Install globally:

gem install lazy_rails

Usage

Create a new Rails project:

lazy_rails new

LazyRails Demo

Development

  1. Clone the repo: git clone https://github.com/[USERNAME]/lazy_rails.git
  2. Install dependencies: bin/setup
  3. Run tests: rake spec
  4. Start console: bin/console

Local installation: bundle exec rake install

Roadmap

  • test compatibility with other ruby/rails versions
  • Selection of Rails version (at least last 3)
  • View template selection (ERB, Haml, Slim)
  • Test tool selection (RSpec, Minitest, Test::Unit)
  • Linter selection (RuboCop, Standard)
  • Basic setup customization (Action Cable, Active Job, Action Mailer, Action Mailbox)
  • On-the-fly popular gem installation (Devise, Sidekiq, Solid Queue)
  • Improve documentation
  • Enhance error handling and user feedback

✅ Completed:

  • Basic CLI structure
  • 'new' command for project generation
  • CSS processor selection (Tailwind, Bootstrap, Bulma, PostCSS, Sass)
  • JavaScript processor selection (Importmap, Bun, Webpack, esbuild, Rollup)
  • Database selection (SQLite3, MySQL, PostgreSQL)
  • Increase test coverage
  • App type selection (API, Web)

Contributing

Contributions are welcome! See CONTRIBUTING.md for details.

License

This gem is available as open source under the MIT License.

Thanks

  • Rails - The web framework that inspired this gem
  • Thor - The toolkit for building powerful command-line interfaces
  • @piotrmurach for tty-prompt
  • @excid3 for inspiration and guidance
  • The entire Rails community workers for their continuous contributions and support

This is my first gem as a Ruby/Rails developer. Sorry for very possible bugs. Feedback and contributions are appreciated!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published