SSR first, lightweight 1kB JSX library.
Written in TypeScript.
Works on Node and Deno.
Designed to build ultra fast MPAs and SPAs.
News
nano-jsx is now at v0.1.x π
This means, no breaking changes till v0.2.x
Tweet about it!
Getting Started
- Visit the website
- Download the template
- Check out the sandbox
- Try the deno example
Video Tutorial
Features
The best about Nano JSX is the small bundle size. It builds, although is sound crazy, bundles as small as svelte!
More Features
SSR
Out of the box, very simple to usePre-Rendering
Renders your app to static html if you want.
(This is possible, but requires some knowledge.
I plan to make a tutorial soon.)Partial Hydration
Hydrate and only the parts you really needIsomorphic Router
Works on Client- and Server-SideCSS in JS
Use JavaScript objects for stylingNo JSX build tools required
Uses Tagged Templates instead of JSX if you preferProps, Ref, Context and Events
Use Props, Ref, Context API and Events as you are used to in reactInline SVG
No problemPrefetch
Use the built-in Link Component1KB (gzip)
All of this in only ~1KB
(Well, the core module is only about ~1KB)CustomElements mode
You can define your component written with Nano JSX as web-components withdefineAsCustomElements
. This enables you to develop very light web components. (thanks @Shinyaigeek)
Documentation
Checkout the website to find out more!
Development Section
Run browser tests (visually)
# install dependencies
npm install
# build
npm run build
# bundle
npm run bundle
# create instrumented bundle
npx webpack -c webpack/webpack.bundle.instrumented.js
# transpile browserTest library
npx tsc -p scripts/browserTest/tsconfig.json
# open browser to run the tests
npx five-server . --open=test/browser