0.1.6 • Published 9 years ago

powerstone v0.1.6

Weekly downloads
3
License
MIT
Repository
github
Last release
9 years ago

Powerstone

Powerstone is an MVC style, ES6 friendly application framework for building data intensive, distributed applications.

It was inspired by Keystone's simplicity in setup, Playframework's configuration flexibility and overall a desire to write less code when building node apps.

###What is provides:

  • Route configuration framework.
  • Tasks system for boot time jobs.
  • Framework for managing and pooling connections.
  • Static configuration files.
  • Query framework for more modular database requests.

###What it does not provide:

  • Automatic Admin UI (yet)
  • ORM/ODM - bring your own and

###Concepts

####Deployment Powerstone is targeted at apps that deploy to environments like Heroku or Dokku.

####Routing Currently it uses express for its http framework but there are plans to support restify as well.

####ES6 Classes Powerstone apps are written preferably in ES6 because of the new class syntax. You may need a transpiler, babel works nicely.

####Directory Layout

A powerstone app has the following directory layout:

.
├── routes
│   └── users.json
├── conf
│   ├── conf.json
│   └── connectors.js
├── controllers
│   └── UserController.js
├── middleware
│   └── isAuthenticated.js
├── models
│   └── User.js
├── queries
│   ├── getOneUser.js
│   └── getUsersWithNameLike.js
├── tasks
│   └── CreateUserTask.js
├── views    
│   └── index.html
└── apps
    ├── reports
    │   ├── routes
    │   │   └── accounting.json
    │   ├── controllers
    │   │   └── AccountingReportController.js
    │   ├── middleware
    │   │   └── isAccountingUser.js
    │   ├── models
    │   │   └── User.js
    │   ├── queries
    │   │   ├── getOneUser.js
    │   │   └── getUsersWithNameLike.js
    │   ├── tasks
    │   │    └── CreateUserTask.js
    │   ├── views
    │       └── index.html
    │
    └── monitor