The Hyperloop framework comprises of a family of gems which for the most part can be used independently (though some do depend on each other).
Gems family and dependencies
One step integration of Hyperloop Gems with Rails.
It is the recommended approach to enjoy all Hyperloop functionalities. You can still control which code packages are loaded on client.
|hyperloop.js||Hyperloop for static sites, with no build process needed.|
All Gems below come with hyperloop installation Gem
but they can be installed independently.
|Core Hyperloop Gems|
The hyper-component gem implements Hyperloop's Components.
Components provides a Ruby DSL to Facebook's React. Much of the documentation on this site covers usage of this Gem.
The hyper-store gem implements Hyperloop's Stores.
Stores hold application state. Stores are Ruby classes that keep the dynamic parts of the state in special state variables
|The hyper-model gem implements Hyperloop's Models and Policies. Providing Hyperloop Models as isomorphic ActiveRecord models. In addition your ActiveRecord models stay connected to your clients via push notifications|
The hyper-operation gem implements Hyperloop's Operations.
Operations encapsulate business logic
|hyper-router||The hyper-router gem provides a Ruby DSL to Facebook's React Router which is a React component that loads other components depending on the current URL.|
|Tools, Testing and Debugging Gems|
|hyper-spec||With hyper-spec you can run isomorphic specs for all your Hyperloop code using RSpec. Everything runs as standard RSpec test specs.|
|hyper-console||The hyper-console gem adds the console method to Kernel. If you call console from anywhere in your client code, it will open a new popup window, that is running an IRB style read-eval loop. The console window will compile what ever ruby code you type, and if it compiles, will send it to your main window for execution. The result (or error message) plus any console output will be displayed in the console window.|
|hyper-trace||Method tracing and conditional breakpoints for Opal Ruby.|
|Opal Hot Reloader||For pure programmer joy, no more page refreshes.|
|Opal Console||Opal in your browser. Great for testing.|