Skip to content
/ nil Public

A recreational hobby project, where I recreate common Javascript libraries and tooling without using any dependencies.

Notifications You must be signed in to change notification settings

charud/nil

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

A recreational hobby project, where I recreate common Javascript libraries and tooling without using any dependencies.

  • unit: Test Runner
  • pack: Code Bundler (inspired by Webpack)
  • act: Library for client side views (inspired by React)
  • dux: Library for state management (inspired by Redux)
  • ajs: Transforms XML-like syntax into JS (inspired by JSX)

Install

To create a symlink for the unit executable

  $ npm link

Test

If you have run npm link

  $ npm test
  or
  $ unit

Alternatively you can call the unit tester directly

  $ node unit/unit.js

Pack

Takes an entry-file and bundles all modules it requires into a single output-file.

Example

  // sum.js
  function sum(x, y) {
    return x + y;
  }
  module.exports = sum;
  // app.js
  const sum = require('./sum.js');
  console.log('1 + 2 = ', sum(1, 2))
  $ pack app.js bundle.js
  Pack
  Bundling app.js into bundle.js
  Done
  $ node bundle.js
  Sum:  5

Sample App

Build the sample app like this:

  $ pack sampleApp/app.js sampleApp/bundle.js

And then run it using any web server, for example:

  $ cd sampleApp
  $ python -m SimpleHTTPServer
  Serving HTTP on 0.0.0.0 port 8000 ...

About

A recreational hobby project, where I recreate common Javascript libraries and tooling without using any dependencies.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published