Vite Rails

Build Status Maintainability Test Coverage Gem Version License

Vite is to frontend tooling as Ruby to programming, pure joy! 😍

Vite Rails provides a complete setup for Rails applications, allowing you to leverage Vite to power the frontend of your Rails app.

Why Vite? 🤔

Vite does not bundle your code during development, which means the dev server is extremely fast to start, and your changes will be updated instantly.

In production, Vite bundles your code with tree-shaking, lazy-loading, and common chunk splitting out of the box, to achieve optimal loading performance.

It also provides great defaults, and is easier to configure than similar tools like webpack.

Check this video comparison with webpack which demonstrates the difference in boot time, or this one with the difference in speed during development.

Features ⚡️

  • 💡 Instant server start
  • ⚡️ Blazing fast hot reload
  • 🚀 Zero-config deployments
  • 🤝 Integrated with assets:precompile
  • And more!

Documentation 📖

Visit the documentation website to check out the guides and searchable configuration reference.

Installation 💿

Add this line to your application's Gemfile:

gem 'vite_rails' # vite_rails_legacy if using Rails 4

Then, run:

bundle install
bundle exec vite install

This will generate configuration files and a sample setup.

Additional installation instructions are available in the documentation website.

Getting Started 💻

Restart your Rails server, and then run bin/vite dev to start the Vite development server.

Visit any page and you should see a printed console output: Vite ⚡️ Ruby.

For more guides and a full configuration reference, check the documentation website.

Contact ✉️

Please use Issues to report bugs you find, and Discussions to make feature requests or get help.

Don't hesitate to ⭐️ star the project if you find it useful!

Using it in production? Always love to hear about it! 😃

Special Thanks 🙏

License

The gem is available as open source under the terms of the MIT License.