aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 15f38379bd759dd6241e747fe4bec925c441e409 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# InApp JS Boilerplate

### Feature list:

 * Easy to start a project from scratch
 * Build on top of RequireJS
 * Templating (based on Mozilla's Nunjucks)
 * State based routing
 * Integrated Optimizer/Minifier ([r.js](http://requirejs.org/docs/optimization.html))



### Requirements
**NodeJS** - For final building

No other dependencies

### Installation:
```sh
$ npm install -g requirejs
```

### Build:

```sh
$ node r.js -o build.js
```
output/production code will be copied to **dist** folder.


### Directory Structure
```sh
Project
├───css
│   └───lib --> Third party libraries
├───fonts
├───images
├───partials --> module wiser partial views should be stored here
│   ├───common
│   ├───dashboard
│   ├───login
│   └───test
└───src
    ├───common 
    ├───dashboard --> module folder
    ├───libs  -> put all third party dependencies here
       └───jquery-ui-1.12.1.custom
           ├───external
              └───jquery
           └───images
    └───login --> module folder
```

### File Descriptions

| File  | Description |
| ------ | ------ |
| build.js | This file contains final build configurations, customizable |
| src/config.js |This files holds module definition, render area declaration, template path etc |
| src/config.require.js | Holds third party library/module definitions |
| src/constants.js | Used to store Application constants like API url, end points etc |
| src/global.js | Global application variable storage (acts like $rootScope of angularJS) |
| src/router.js | This file is important, stores the application routing, module permissions, module loading etc |
| src/main.js | Entry point/ boostraper of the Application. This will initiate the router config |
| src/moduleLoader.js | Utility library used to load module, utilizing config.js |
| src/services.js | services is a wrapper library around standard JQuery Ajax |
| src/templateRenderer.js | Used to load template using nunjucks |