minstrapp

1.3.0 • Public • Published

node-minstrapp

minimal application bootstrapper

getting started

npm install && npm start

EJS modification

Important:
I am using a modified version of the EJS module from npm

patch to enable EJS dynamic includes

  • comment on stackoverflow
  • github pull-request (not merged)
  • you can also get the modified files from this commit
    or git checkout ejs-enable-dynamic-includes to test that the modification in this line of code does actually work after the patch.

MVC pattern (model-view-controller)

  • models go into /db
    it's LevelDB, take a look at the documentation, using it as an object store for simplicity, it stores data structures which will be passed into templates by your controllers.
  • put view templates in /views
  • controllers are added to /routes
    these are Express/Connect middleware functions <route-name>.js

What you are getting here is actually 3 blank slates, so that you can build out your own app design.

I thought if i packaged it like this (with minimal concepts) then others can more easily learn this technique from the simplicity of the code.

example tree

  minstrapp
   │
   ├── assets
   │   ├── css
   │   │   └── custom.css
   │   ├── img
   │   │   └── img01.jpg
   │   └── js
   │       └── custom.js
   ├── bin
   │   ├── build.sh
   │   └── clean.sh
   ├── db
   │   └── demo
   │       ├── 000005.ldb
   │       ├── 000008.ldb
   │       ├── 000009.log
   │       ├── CURRENT
   │       ├── LOCK
   │       ├── LOG
   │       ├── LOG.old
   │       └── MANIFEST-000007
   ├── index.js
   ├── package.json
   ├── public
   │   ├── css
   │   │   └── styles.css
   │   ├── favicon.ico
   │   ├── img
   │   │   └── img01.jpg
   │   └── js
   │       └── main.js
   ├── routes
   │   └── home.js
   └── views
       ├── layout.html
       ├── pages
       │   └── home.ejs
       └── partials
           ├── footer.ejs
           └── header.ejs

license

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i minstrapp

Weekly Downloads

9

Version

1.3.0

License

MIT

Last publish

Collaborators

  • joates