Description
Think JavaScript is your only option for the front-end? Think again. Hyperstack is a Ruby DSL, compiled by Opal, bundled by Webpack, powered by React.
Hyperstack lets you write your entire web app from HTML and event Handlers to the server models in Ruby. The resulting code is typically 1/4 the size of the equivalent HTML/JS/Ruby code.
Hyperstack alternatives and similar gems
Based on the "Web Frameworks" category.
Alternatively, view Hyperstack alternatives based on common mentions on social networks and blogs.
-
Sinatra
Classy web-development dressed in a DSL (official / canonical repo) -
ReactOnRails
Integration of React + Webpack + Rails + rails/webpacker including server-side rendering of React, enabling a better developer experience and faster client performance. -
Volt
A Ruby web framework where your Ruby runs on both server and client -
Ramaze
Ramaze is a simple, light and modular open-source web application framework written in Ruby. -
NYNY (New York, New York)
a (ridiculously) small and powerful web framework. -
Plezi
Plezi - the Ruby framework for realtime web-apps, websockets and RESTful HTTP -
Nancy
Minimal Ruby microframework for web development inspired in Sinatra and Cuba. -
Glimmer DSL for Opal
Glimmer DSL for Opal (Pure-Ruby Web GUI and Auto-Webifier of Desktop Apps) -
data_type_validator
Simple DSL for datatype validation for basic data types. Inspired from GRPC DSL
Collect and Analyze Billions of Data Points in Real Time
* 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 Hyperstack or a related project?
README
Hyperstack
Hyperstack is a Ruby-based DSL and modern web toolkit for building spectacular, interactive web applications fast!
- One language throughout the client and server. All Ruby code is compiled by Opal into JavaScript automatically.
- Webpacker and Yarn tooling for a modern, fast hot-reloader build environment with Ruby source maps.
- A well documented and stable Ruby DSL for wrapping React and ReactRouter as well as any JavaScript library or component. No need to learn JavaScript!
- Isomorphic Models with bi-directional data so you can access your models as if they were on the client.
This means you can write simple front-end code like this:
class GoodBooksToRead < HyperComponent
render(UL) do
Book.good_books.each do |book|
LI { "Read #{book.name}" }
.on(:click) { display book } if book.available?
end
end
end
In the code above, if the good_books
scope changed (even on the server), the UI would update automatically. That's the magic of React and Isomorphic Models with bi-directional data at work!
Website and documentation
Please see the website site for full documentation:
Setup and installation
You can be up and running in less than 5 minutes. Just follow the simple setup guide for to add Hyperstack to a new or existing Rails application:
Development Status
We now are issuing 1.0 release candidates weekly until all issues are either closed or moved to post 1.0 release status. Your opinion matters, plus take some time to up/down vote or comment on issues of interest.
ReleaseDate | Version | OpenIssues | DocumentationSectionsDraft Ready | DocumentationSectionsWIP |
---|---|---|---|---|
April 12, 2021 | 1.0.alpha1.8 | 128 | 36 | 9 |
Open issues includes enhancements, documentation, and discussion issues as well as few bugs.
The documentation WIP (work in progress) numbers are approx, as more sections may be added.
Community and support
Hyperstack is supported by a friendly, helpful community, both for users, and contributors. We welcome new people, please reach out and say hello.
- Join our Slack group
- After you have joined there is a shortcut at https://hyperstack.org/slack
StackOverflow Questions
Please ask technical questions on StackOverflow as the answers help people in the future. We use the hyperstack
tag, but also add ruby-on-rails
, ruby
and react-js
tags to get this project exposed to a broader community.
- Please ask questions here: https://hyperstack.org/question
- All the
hyperstack
tagged questions are here: https://hyperstack.org/questions
Contributing
If you would like to help, please read the [CONTRIBUTING][] file for suggestions.
License
Released under the MIT License. See the [LICENSE][] file for further details.
*Note that all licence references and agreements mentioned in the Hyperstack README section above
are relevant to that project's source code only.