0.1.2 • Published 11 years ago
egress-bootstrap v0.1.2
egress-bootstrap: start writing a web app already.
egress-bootstrap is a minimal Express app template for a user account system, built with Twitter's Bootstrap. I built this with the intention of getting user-based node.js apps scaffolded out quickly.
Usage
- The best way to use egress-bootstrap is by using the Yeoman generator
- This package was not meant to be installed through npm
- But, you can run
npm install egress-bootstrap, then copy the contents of thenode_modules/egress-bootstrapfolder to the root of your project directory and follow the steps below - Or, you can clone this project in the root of your project directory by running
git clone git@github.com/shakeelmohamed/egress-bootstrap.git
- But, you can run
- You don't need to declare this module as a dependency in your project's
package.jsonfile.
Current problems (marked with a TODO)
- There is no significant input validation in place, I suggest using validator.js since it's already being used in the browser - located at public/js/validator.min.js. See the current validation in public/js/egress-validators.js
Getting Started:
- If it does not exist, create a
.envfile in the root directory of this project. Your
.envfile should contain your PostgreSQL connection string in the following format, the?ssl=truequery parameter is necessary only if your database connection requires SSL (Heroku's databases do) and will default to false if omitted:``` DATABASE_URL=postgres://<username>:<password>@<host>:<port>/<dbname>?ssl=true ```This will allow your application to connect to your database
Modify the
configobject inconfig.jsto modify the application settings.- Running
foreman startwill serve the application on the post listed in config.js (defaulting to 5000), and process theDATABASE_URLvariable, locally. Alternatively, runningnode app.jswill do the same thing if you don't want to use foreman.
Deploying to Heroku:
- Authenticate via the Heroku command line,
heroku login - Set your environment variables on Heroku
- If you've already setup your
.envfile as documented above, simply runheroku config:push - Otherwise you can run the following command:
heroku config:set DATABASE_URL=postgres://<username>:<password>@<host>:<port>/<dbname>?ssl=trueThen runheroku config:push
- If you've already setup your
- Push your code up to your Heroku app
- You're done!
Modifying site content
- The
jadedirectory contains files for various markup files used to generate web pages. - The
controllersdirectory contains files for specific functionality for views, along with the files inroutesfor how they're invoked. - Add additional frontend assets to the
publicdirectory, then reference them in the files found injade/includes, particularlyhead.jadeandscripts.jade
Running the tests
- Make sure your environment is setup to run Zombie.js
- With foreman
- run
foreman run npm testfrom the root directory of this repository
- run
- Without foreman
- run
npm test
- run
Validating JS and Jade files
- Run
grunt
Dependencies
- Bootstrap v3.1.1
- PostgreSQL
- For other dependencies see package.json
Issues
- When in doubt, create an issue!
Contact
You can most easily reach me on twitter @_Shakeel
License
This project is licensed under the terms of the MIT license
0.1.2
11 years ago