Skip to content
mike edited this page Apr 22, 2017 · 11 revisions

Sirius is a modern javascript framework for client side.

Sirius has full support for next browsers: IE9+, Firefox, Opera 12+, and Chrome\Chromium.

What makes Sirius the best web framework?

It's simplicity for development and power model of core.

Let's see all feature one by one.

1. MVC pattern

Sirius has a power model support (if you work with ActiveRecord from Rails you appreciate)

MVC pattern great for client side (and server side the same) because we work with backend through ajax or websocket. Dataflow:

some event => routing => client side controller => ajax|websockets request => backend => response => client side controller => view 

2. MVVM pattern

All changes in view reflected in the model, and vice versa. Sirius support binding between javascript object and view - you might to add new property into any object and listen changes for this property.

3. Routing

I think the best part of Sirius, it's a universally routing, not only for changes in url, but also for mouse or key event, and for custom javascript events of course, and scheduler job.

4. Power models

Models has relations, serialization, and great validators. You might create own validator it simple.

5. Adapters for jQuery or Prototype and Vanilla.js.

6. Logging

All events, message passing in framework logging, you might see what Sirius does under hood.

7. Templates

Select you favorite javascript template library and use.

8. Collection support

Collection parametrized by model type, subscribe on any changes in collection, indexes for quick search by field name.

9. Not need write html code, write only javascript or coffee code. Forgout about horror like <div ng-directive='bla-bla'></div>

10. Forgot about events in models, this is bad style, Sirius has a obvious architecture

11. Forgot about different type of controllers, controller is just a function, (or object with functions) not different controllers for Object, Array or something like it.

12. Write testable code with controller_wrapper

Clone this wiki locally