A Javascript Framework for Building Brilliant Applications
See the website for documentation
There's also a blog and a mailing list
Mithril is a client-side MVC framework - a tool to organize code in a way that is easy to think about and to maintain.
- Only 5kb gzipped, no dependencies
- Small API, small learning curve
- Safe-by-default templates
- Hierarchical MVC via components
- Virtual DOM diffing and compilable templates
- Intelligent auto-redrawing system
//namespace
var app = {};
//model
app.PageList = function() {
return m.request({method: "GET", url: "pages.json"});
};
//controller
app.controller = function() {
var pages = app.PageList();
return {
pages: pages,
rotate: function() {
pages().push(pages().shift());
}
}
};
//view
app.view = function(ctrl) {
return [
ctrl.pages().map(function(page) {
return m("a", {href: page.url}, page.title);
}),
m("button", {onclick: ctrl.rotate}, "Rotate links")
];
};
//initialize
m.mount(document.getElementById("example"), app);