Joosy is a javascript framework. Being a harmonious extensions to Rails it introduces everything you like about backend right to your browser. Ready conventions set, extensive CoffeeScript, HAML support, Helpers, seamless backend integration, automatic code generation and more.
Master branch is currently totally incompatible with the stable 1.1 and 1.0 branches. 1.2 features total restructuring of the way we build the gem and the way you are supposed to include it.
To keep things working please use either
gem 'joosy', '~> 1.1.1'
or
gem 'joosy', github: 'joosy/joosy', branch: '1.1'
Guides and API are also bound to 1.1 branch. Again – make sure you use proper gem versions.
Below in this README you will find new installation instructions. They are still very likely to change or work not as expected while 1.2 branch is still early alpha.
Keep track on what's going on at the Wiki
Joosy allows you to create web apps which work completely in the browser. So that, it helps you to relocate all your Rails Views to the client side. It also helps you with managing the growing quantity of JS code. On another hand, it makes your backend to have exactly one function – to be a simple REST provider. That leads to easier development support and improves the scalability greatly.
Besides Rails, Joosy is based on top of CoffeeScript, jQuery and Sugar.js in role of ActiveSupport.
Finally, Joosy boosts your development drastically. Just like the Rails framework does.
Add Joosy gem to your Gemfile:
gem 'joosy-rails', '~> 1.0.0'
Use built-in generator to seed a basic application:
rails g joosy:application
Make sure to remove public/index.html
and you are ready to go with localhost:3000. The main application code can be found at app/assets/javascripts
directory. HTML canvas of the application is at app/views/layouts/joosy.html.erb
.
Make sure you have Node.js installed. Install joosy package globally to start with:
npm install joosy -g
Now run basic application generator with the following command:
joosy new dummy
The main application code will appear at source
directory. stylesheets
is for Stylus-based styles and the main canvas of page is defined at source/index.haml
. Now you can grunt joosy:server
to start development server at localhost:4000.
To generate assets statically prior to the deployment run:
grunt joosy:compile
You assets are at public/
directory, enjoy!
- Ensure you have Node.js available on your system
- Clone the project
- Run
npm install
to get required Node modules - Run
bower install
to get required JS components - Run
grunt test
to run specs once - Run
grunt
to watch sources (automatic changes compilations) and run test-server (get your browser to http://localhost:8888/)
While current repository is at the same time NPM package, Ruby gem and Bower component, – the main Core environment is Node.js.
- Boris Staal, @inossidabile
- Andrew Shaydurov, @ImGearHead
- Alexander Pavlenko, @alerticus
Copyright 2011-2013 Boris Staal
It is free software, and may be redistributed under the terms of MIT license.