0.1.0 • Published 8 years ago

dolphin-core v0.1.0

Weekly downloads
1
License
AGPL
Repository
github
Last release
8 years ago

Core

Installation

Requires

npm install gulp -g

npm install dolphin-cli -g

Run

dolphin-cli init -t develop test-project

cd test-project && npm install && gulp

You will get the following structure:

packages
---- some package 1
---- some package 2
gulpfile.js    

Package structure

Server

Packages are registered in the module.js Create a file package.json

All of the Server side code resides in the /server directory.

Server
--- acl           # Configuration file of acl
--- controllers   # Server side logic goes here
--- models        # Database Schema Models
--- model_ext     # Extensions for Schema Models
--- routes        # Rest api endpoints for routing
--- views         # Swig based html rendering

Client

All of the Client side code resides in the /public directory.

public            
--- assets        # JavaScript/CSS/Images (not aggregated)
--- controllers   # Angular controllers
--- config        # Contains routing files
--- services      # Angular services (also directive and filter folders)
--- views         # Angular views

By default you will get these modules:

Notice The package structure can be anything, only require module.js and package.json in folder. But if you use some plugins you have to follow their WIKI.

How to create a package

1) Create a folder in packages

2) Create a file module.js

3) Create a file package.json

The content of module can be like this:

var Module = require('dolphin-core-modules').Module;
var test = new Module('Test', __dirname);

//registration factory also initialization
test.addFactory('Configuration',function () {
    return {
      a:1 // can be override from another module
    }
});

//configuration other factories 
test.configureFactories(function (MongooseConfigurationFactory, WebServerConfigurationFactory, HtmlRenderConfigurationFactory, AngularJsConfigurationFactory, AclManagerConfigurationFactory) {
    
    //module has mongoose models
    MongooseConfigurationFactory.addModule(test);
    
    //module has routes, can be api etc
    WebServerConfigurationFactory.addModule(test);
    
    //module will have acl logic
    AclManagerConfigurationFactory.addModule(test);
    
    //module has views to render to client
    HtmlRenderConfigurationFactory.addModule(test);
    
    //module as angular module
    AngularJsConfigurationFactory.addModule('test', test);
    
});


test.run(function(TestConfigurationFactory, /* any factories, etc*/){
    //here you will get the last version of any factories
    
    //execute your logic
});

Resolve objects

You can get any factories or modules everywhere.

var dolphin = require('dolphin-core');
dolphin.resolveObjects(function(TestConfigurationFactory, Mongoose /* etc*/){
   //here you can use them
});
0.1.0

8 years ago

0.0.20

8 years ago

0.0.19

8 years ago

0.0.18

8 years ago

0.0.17

8 years ago

0.0.16

8 years ago

0.0.15

8 years ago

0.0.14

8 years ago

0.0.13

8 years ago

0.0.12

8 years ago

0.0.11

8 years ago

0.0.10

8 years ago

0.0.9

8 years ago

0.0.8

8 years ago

0.0.6

8 years ago

0.0.5

8 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.1

8 years ago