Fork me on GitHub


Zeroth

Full stack isomorphic typescript framework.


Unsplashed background img 1

code

Modern design pattern

By using the Angular 2 dependency injector across both frontend and backend, platform-independent dependencies can be injected by multiple platforms

widgets

Angular Fullstack

By using Angular 2 in the frontend and the Angular 2 injector in the backend, Angular developers are immediately familiar with the development environment

assignment

Documentation Framework

By leveraging Typedoc and Metalsmith, generating documentation for consumers of your component is a breeze.

call_to_action

Advanced CLI

An extensible commandline interface allows for custom commands to be registered for both the build toolchain and the server runtime

http

Decoupled API

While components are shared between the frontend and backend, there is no coupling. A Zeroth component or application can be a standalone REST API.

directions_boat

Deploy with Docker

A Zeroth application can easily be packaged as a docker image and deployed at scale.

build Zeroth is currently in alpha (developer preview) phase and being actively developed.

See the roadmap below to see the planned release schedule. Keep up to date by following @zeroth on Twitter

Roadmap

First beta release (feature complete)

  • ☐ Angular Universal (server side prerendering) integration
  • ☐ Docker deployment
  • ☐ Email sending
  • ☐ Queue handling
  • ☐ Pagination service (front & backend)
  • ☐ on initialization generate passwords and certificate for auth
  • ☐ Integrate code generation methods from Angular CLI
  • ☐ Docker integration into toolchain for local dev
  • ☐ CLI handled migrations
  • ☑ CLI handled seeding
  • ☑ Database migrations
  • ☑ Database seeding from MockModelProviders
  • ☑ Full validation decorator complement
  • ☑ 100% Code coverage
  • ☑ Migration to TypeORM
  • ☑ Entity registry with decorators for registering components anywhere

Developer Preview [June 20th]

  • ☑ Model hydration and mocking
  • ResourceController implementation with CRUD routes
  • ☑ Custom middleware registration
  • ☑ Demo model schema sync and seed
  • ☑ Http exceptions
  • ☑ Post-initialization cli tour
  • ☑ Full stack demo in quickstart
  • ☑ FAQ page in docs
  • ☑ Documented contribution guidelines

Sprint 0 [June 10th]

  • ☑ Full stack proof of concept
    • ☑ Backend dependency injection with @angular/core
    • ☑ Angular 2 compiling with webpack
    • webpack watcher for browser & common changes with livereload
    • nodemon watcher for server & common changes
    • ☑ Compilation to es2015 for browser on build
    • ☑ Compilation to es2015 for api on build
    • ☑ Output consumable by typings
    • ☑ Source mapping for api debugger
    • ☑ Full stack debug breakpoints in Webstorm
    • ☑ Live reloading browser
    • ☑ Live restarting server
    • ☑ Route registration with @Route decorator
    • docker-compose.json running postgres db
    • ☑ Connection to database from localhost with Sequelize
    • ☑ Testing framework for both frontend and backend
    • ☑ Travis Ci automated testing
    • ☑ Coverage results remapped to typescript, pushed to coveralls
    • ☑ Abstract and concrete @injectable implementation of Logger class/interface
    • ☑ Automated deployment to npm registry with version bump
  • ☑ Commandline interface
    • vantage cli task runner integrating with gulp and metalsmith tasks
    • ☑ Configuration file in parent project
    • ☑ Extendable commands
    • ☑ Shell connection to server runtime context
    • ☑ Runtime task registration
    • ☑ Initialization of new projects (quickstart)
  • ☑ Documentation framework
    • ☑ File watcher/livereload server
    • ☑ Typedoc integration
    • ☑ Extendable styles, templates, assets
    • ☑ Default collections for automatic navigation generation