Karax. Single page applications for Nim.
Find a file
2017-11-22 14:37:12 +01:00
docs add benchmark result 2017-04-22 10:55:28 +02:00
examples fixes issues in the new examples 2017-11-20 14:04:34 +01:00
experiments added new experiments 2017-11-22 14:37:12 +01:00
karax merged PR #38 manually; refs #38 2017-11-21 23:44:45 +01:00
tests added many more examples 2017-11-20 12:26:30 +01:00
tools tools/karun: produce CSS only with --css switch 2017-11-16 15:34:08 +01:00
.gitignore fixes #25 (#26) 2017-06-18 00:01:27 +02:00
.travis.yml attempt to make travis green again 2017-11-20 23:55:13 +01:00
karax.nimble added 'karun' tool to karax.nimble 2017-11-20 12:26:10 +01:00
readme.rst proper rst solution 2017-06-17 17:05:37 +02:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Karax – Single page applications in Nim |travis|
================================================

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.

.. |travis| image:: https://travis-ci.org/pragmagic/karax.svg?branch=master
    :target: https://travis-ci.org/pragmagic/karax