Rill is the answer to a simple question; Can I run my Express style router in the browser? Turns out you can and it works awesome.
It brings a common interface to many typical app like features in both the browser and nodejs. Many isomorphic frameworks have crazy abstractions and learning curves but with Rill, if you understand Express or Koa, you already know how the routing works! In Rill you get to program much of your application logic using the same api (client or server) including routing, rendering, data fetching and more are easily shared.
Rill also works perfectly as a stand alone nodejs server or a stand alone browser framework. This allows for easy progressive enhancement. If all is well the browser can handle much of your application logic and if JavaScript fails for any reason your server knows exactly what to do.
Uses Rill with @rill/svelte middleware to create an isomorphic/universal TodoMVC app.
Templates are created with Svelte but you can can easily swap this out by using a different templating engine middleware such as @rill/html or writing your own.
Webpack and babel are used to bundle the app for both the server and browser for optimum performance.
Use "npm run watch" to build and run the app yourself (starts up on port 8080).
Created by Dylan Piercey