Karax. Single page applications for Nim.
Find a file
Roman Vishnevskii e88f9e4c96 Fix empty LIS
2017-05-10 18:51:13 +07:00
docs add benchmark result 2017-04-22 10:55:28 +02:00
examples todoapp: use local storage properly 2017-04-22 10:45:42 +02:00
experiments renamed ajax.nim to kajax.nim 2017-04-24 17:46:37 +02:00
src Fix empty LIS 2017-05-10 18:51:13 +07:00
tests Fix empty LIS 2017-05-10 18:51:13 +07:00
uibench made it shorter again 2017-04-27 18:23:29 +02:00
.gitignore first example with virtual dom; virtual dom still buggy 2017-03-30 23:52:47 +02:00
karax.nimble update karax.nimble file 2017-04-24 16:27:20 +02:00
readme.rst readme.rst: changed the wording slightly 2017-04-22 10:56:14 +02:00

Karax -- Single page applications in Nim
========================================

Karax is a framework for developing single page applications in Nim.
It's still in heavy development, so keep in mind that the API is subject
to change.

To try it out, run::

  nimble install # For first time

  cd examples/todoapp
  nim js todoapp.nim
  open todoapp.html
  cd ../..

  cd examples/mediaplayer
  nim js playerapp.nim
  open playerapp.html

It uses a virtual DOM like React, but is much smaller than the existing
frameworks plus of course it's written in Nim for Nim. No external
dependencies! And thanks to Nim's whole program optimization only what
is used ends up in the generated JavaScript code. But don't take my
word for it, look at this:

.. image:: docs/benchmark.png


Goals
=====

- Leverage Nim's macro system to produce a framework that allows
  for the development of applications that are boilerplate free.
- Keep it small, keep it fast, keep it flexible.