README.md
Instant Skeleton Instant-Skeleton ================ Gitter Dimension Software

Build Bigger with Less

Best opinionated realtime framework to lift heavy functionality lightening quick with Node.JS

PROTIP Be sure to peruse our fancy documentation

Quick Start

$ git clone git@github.com:DimensionSoftware/instant-skeleton.git
$ cd instant-skeleton
$ npm install && npm test && npm start

Create Your First Page

Building your SEO-friendly, realtime application is simple! Instant Skeleton cobbles together the best of functional React.JS into a single, routable concept that makes your on-screen productivity incredible: Pages

Page: declarative, isomorphic bits of React + Omniscient + Immutable.JS

  1. Add a Route

     $ vim shared/routes.ls
  2. Add a Page Handler for the Route

     $ vim server/pages.ls
  3. Add a Component for the Page

     $ vim shared/react/[ROUTE-NAME].ls

Environment & "npm config" Variables

  • NODE_ENV -- "development", "production" or "test"
  • NODE_PORT -- port to listen on
  • SUBDOMAIN -- subdomain of site

See all configurable variables in package.json and customize with a .env file!

References

SERVER

SHARED

CLIENT

Principles

How much does your stack weigh? Keeping Instant Skeleton light as possible means true agility and speed. This no-compromise, SEO-friendly stack is fast, functional and streaming in realtime. Zero external service dependencies make deploying a cinch. Persistence is LevelDB.

With technologies like Famo.us and a savvy, cutting-edge HTML5 core, Instant Skeleton provides true first-class mobile experiences. Got realtime physics at 60fps? Real offline? High-speed, secure websockets? We do.

From nothing, you have potential to build greatness; only-- with Instant Skeleton, you start way ahead with the best curated tools for lifting heavy, realtime functionality into the browser with insane productivity. Unlock the potential of HTML5 and Node.JS. Start hacking now!

FAQ

  1. How is this different from Meteor.JS?

    + We ♥ [NPM](http://npmjs.org).
    + Instant Skeleton is tiny, fast & secure.
    + We are streaming functional [LiveScript](http://livescript.net): write less code with fewer bugs.
    + Isomorphic Web Components leveraging [React](http://facebook.github.io/react/docs/getting-started.html) for data-binding.
  2. How easy is this to debug & reason about?

    + All variables are const
    + Immutable.JS persistent data structures
    + --harmony generators provide useful stack traces
    + Check out our [perf](https://github.com/DimensionSoftware/instant-skeleton/tree/perf) branch for runtime profiling
  3. How rapid is development?

    + Instant "hot" live loads
    + Undo & Redo for FREE
    + Zero browser plugins required
    + Application state is preserved across reloads
  4. How can I enable and disable features?

    + Zero impact for unused features
    
         $ vim shared/features.ls
  5. How can I add my own data store?

    + Simple!  Hook it into your **Page** handler:
    
         $ vim server/pages.ls
  6. How easy is session management?

    + Session updates are automagically streamed in realtime with LevelDB.
    
         $ vim server/pages.ls

Contributors & Idea Factories

Keith Hoerling

John Beppu

Matt Elder

Dave Seleno

Mark Huge

According to GitHub . Become a Contributor . Pull request friendly!

TODO

  • Famo.us+React
  • Feathers-like services
  • Selenium and more tests
  • Coverage working with LiveScript
  • Fork and implement TODO example
  • More beautiful documentation & better literate .ls

 

Fresh Software by Dimension