There are two ways to create a project
Here is the a example for the setup of a basic project/service
mkdir project && cd project
git init
git submodule add https://github.com/Product-Live/Singularity.git Singularity
cp Singularity/engine/core/skeleton/submodule.js main.js
cp Singularity/engine/core/skeleton/ignore .gitignore
node main.js --skeleton app
node main.js --skeleton module --name api
One liner version
a="project"&&b="Singularity/engine/core/skeleton"&&mkdir $a&&cd $a&&git init&&git submodule add https://github.com/Product-Live/Singularity.git Singularity&&cp $b/submodule.js main.js&&cp $b/ignore .gitignore&&node main.js --skeleton app&&node main.js --skeleton module --name api
Here is the a example for the setup of a basic project/service
mkdir project && cd project
npm init -f
npm install singularityjs
cp node_modules/singularityjs/engine/core/skeleton/npm.js main.js
cp node_modules/singularityjs/engine/core/skeleton/ignore .gitignore
node main.js --skeleton app
node main.js --skeleton module --name api
One liner version
a="project"&&b="node_modules/singularityjs/engine/core/skeleton"&&mkdir $a&&cd $a&&npm init -f&&npm install singularityjs&&cp $b/npm.js main.js&&cp $b/ignore .gitignore&&node main.js --skeleton app&&node main.js --skeleton module --name api
Fresh clone of a project
git clone --recursive git://github.com/user/project.git
On a already cloned project
git clone git://github.com/user/project.git
cd bar
git submodule update --init --recursive
This is what the skeleton app looks like
- app
- boostrap
- worker.js (profile to start a project)
- config (optional)
- config_files (split config)
- module
- module_name
- controller
- config.js (dependencies, route, cdn, import)
- ...
- module_name
- resources
- cache
- logs
- .machineSession (unique key)
- config.js (config object loaded into $.config)
- boostrap
- Singularity (submodule)
- main.js (entry point)
These are the base npm dependencies used in the framework
- bcryptjs
- mongodb
- sha512crypt-node
- ws
- request
you can add extra dependencies into package.dependencies in config or in a module's config.
yes
TODO