rsnc.js is a client-side single page framework for rapidly developing large and complex webapps with minimal effort. All component classes follow the same basic API no matter what your widgets look like. Theming is done by simple component- and theme-specific html and css templates. UI construction can be done using just a simple YAML / JSON structure format, which even beginners can rapidly prototype with.
For more advanced users, there is a nice API which supports CoffeeScript and JS.
Clone this repository into the root of an RSence repository clone as 'client'.
(install the dependencies) git clone git@rsence.org:rsence.git rsence git clone git@rsence.org:rsnc.git rsence/client (run your code, see examples)
rsnc.js is an object-oriented framework and classes are designed to be extended. The superclasses do all the difficult housekeeping for you. Client-server as well as client-client communication is done via automatic value synchronization.
Interdependencies are kept at a minimum, so you don't have
to worry about referencing your variables throughout various
parts of your project, and this
is practically always this
.
If you are using the RSence server, your code will automatically be built and deployed to all connected clients. This means that while developing, you can keep writing code and at each save, your browsers will refresh to show the current state of progress. Besides building the client packages and serving them, the server doesn't participate in user interface tasks. It's entirely data oriented, to keep your UI and data models cleanly separate.
rsnc.js is licensed under the MIT license. You are encouraged to fork it on Github and to write your own server interface to suit your needs. The protocol is very simple to implement and requires just a single JSON POST listener / responder for the data pump.
- rsnc.js Website
- RSence Website
#rsence
on FreeNode