Description
For the current status of Volt, read: http://voltframework.com/blog
Volt is a Ruby web framework where your Ruby code runs on both the server and the client (via Opal). The DOM automatically updates as the user interacts with the page. Page state can be stored in the URL. If the user hits a URL directly, the HTML will first be rendered on the server for faster load times and easier indexing by search engines. Subsequent local page interactions will be rendered on the client.
Instead of syncing data between the client and server via HTTP, Volt uses a persistent connection between the client and server. When data is updated on one client, it is updated in the database and any other listening clients (with almost no setup code needed).
Page HTML is written in a templating language where you can put Ruby between {{ and }}. Volt uses data flow/reactive programming to automatically and intelligently propagate changes to the DOM (or to any other code that wants to know when a value has changed). When something in the DOM changes, Volt intelligently updates only the DOM nodes that need to be changed.
See some demo videos here:
Volt alternatives and similar gems
Based on the "Web Frameworks" category.
Alternatively, view Volt alternatives based on common mentions on social networks and blogs.
-
ReactOnRails
Integration of React + Webpack + Rails + rails/webpacker including server-side rendering of React, enabling a better developer experience and faster client performance. -
Glimmer DSL for Web
Glimmer DSL for Web (Ruby-in-the-Browser Web Frontend Framework). The "Rails" of Frontend Frameworks!!! -
Glimmer DSL for Opal
DISCONTINUED. Glimmer DSL for Opal (Pure-Ruby Web GUI and Auto-Webifier of Desktop Apps)
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Volt or a related project?
Popular Comparisons
README
For the current status of Volt, read: http://voltframework.com/blog
Volt is a Ruby web framework where your Ruby code runs on both the server and the client (via Opal). The DOM automatically updates as the user interacts with the page. Page state can be stored in the URL. If the user hits a URL directly, the HTML will first be rendered on the server for faster load times and easier indexing by search engines. Subsequent local page interactions will be rendered on the client.
Instead of syncing data between the client and server via HTTP, Volt uses a persistent connection between the client and server. When data is updated on one client, it is updated in the database and any other listening clients (with almost no setup code needed).
Page HTML is written in a templating language where you can put Ruby between {{
and }}
. Volt uses data flow/reactive programming to automatically and intelligently propagate changes to the DOM (or to any other code that wants to know when a value has changed). When something in the DOM changes, Volt intelligently updates only the DOM nodes that need to be changed.
See some demo videos here:
- Volt Todos Example
- What Is Volt in 6 Minutes
- Promises in 0.9.3 prerelease
- Pagination Example
- Routes and Templates
- Isomorphic App Development - RubyConf 2014
- Build a Blog with Volt Note: The blog video is outdated, expect an updated version soon.
Check out demo apps:
For a full list of all things volt, check out awesome-volt
Docs
Read the full docs on Volt here
There is also a work in progress tutorial by @rhgraysonii
More Videos
Rick Carlino has been putting together some great volt tutorial videos also.
- Volt URL Routing
- Volt Tasks
- Volt Views
- Volt Permissions
- Volt Runners
- Volt Components
- REST APIs in Volt
- Javascript Library Interop
- Credit Card Payments with Volt
- Build a Realtime Chat App
- 6 Key Concepts for New Volt Learners
@ahnbizcad maintains a playlist of Volt related videos.
Getting Help
Have a question and need help? The volt team watches stackoverflow for questions and will get back to you quickly. Be sure to post the question with the #voltrb tag. If you have something you'd like to discuss, drop into our gitter room.
Contributing
You want to contribute? Great! Thanks for being awesome! At the moment, we have a big internal todo list. Please hop on https://gitter.im/voltrb/volt so that we don't duplicate work. Pull requests are always welcome, but asking about helping on Gitter should save some duplication.
Support
VoltFramework is currently a labor of love mainly built by a small group of core developers. Donations are always welcome and will help Volt get to production faster :-) Also, if you or your company is interested in sponsoring Volt, please talk to @ryanstout in gitter.
Bitcoins can also be sent to 1AYiL3MiSVe2QFyexzozUvFFH7uGCJgJMZ
*Note that all licence references and agreements mentioned in the Volt README section above
are relevant to that project's source code only.