Git Product home page Git Product logo

hyperstack's Introduction

Hyperstack

Build Status

This is the edge branch - the system is stable, and there are approx 1000 test specs passig. For current status on development see current status.

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.

All that means you can write simple front-end code like this:

class GoodBooksToRead < Hyperstack::Component
  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 for full documentation, or find the same content in the /docs folder in this repo if you prefer.

Our website serves as a Hyperstack example application. All the doc content is loaded dynamically from this repo and converted to HTML on the fly. It uses React Semantic UI and a client-side JavaScript full-text search engine. Its a Rails app hosted on Heroku.

Setup and installation

You can be up and running in less than 5 minutes. Just follow the simple setup guide for a new Rails application all correctly configured and ready to go with Hyperstack.

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.

Roadmap

Hyperstack is evolving; we are improving it all the time. As much as we love Ruby today, we see ourselves embracing new languages in the future. Crystal perhaps? We are also watching Wasm carefully.

Please see the ROADMAP file for more information.

Contributing

If you would like to help, please read the CONTRIBUTING file for suggestions.

Links

License

Released under the MIT License. See the LICENSE file for further details.

History

Hyperstack is an evolution of Ruby-Hyperloop. We decided to rename the project to drop the Ruby suffix and also took the opportunity to simplify the repos and project overall.

hyperstack's People

Contributors

janbiedermann avatar catmando avatar zetachang avatar ajjahn avatar johansmitsnl avatar barriehadfield avatar adamcreekroad avatar fzingg avatar tim-blokdijk avatar sfcgeorge avatar wied03 avatar michaelsp avatar fkchang avatar noma4i avatar anithri avatar donnadieu avatar gabrielrios avatar jgaskins avatar josephgrossberg avatar johan-smits avatar kwhittington avatar maxdignan avatar gitter-badger avatar comexpressao avatar hayley avatar psmir avatar tsuka avatar

Stargazers

 avatar

Watchers

 avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.