egress-bootstrap
v0.1.2
Published
A minimal Express app template for a user account system, built with Twitter's Bootstrap.
Downloads
16
Maintainers
Readme
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-bootstrap
folder 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 [email protected]/shakeelmohamed/egress-bootstrap.git
- But, you can run
- You don't need to declare this module as a dependency in your project's
package.json
file.
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
.env
file in the root directory of this project. - Your
.env
file should contain your PostgreSQL connection string in the following format, the?ssl=true
query 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
config
object inconfig.js
to modify the application settings. - Running
foreman start
will serve the application on the post listed in config.js (defaulting to 5000), and process theDATABASE_URL
variable, locally. Alternatively, runningnode app.js
will 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
.env
file 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=true
Then runheroku config:push
- If you've already setup your
- Push your code up to your Heroku app
- You're done!
Modifying site content
- The
jade
directory contains files for various markup files used to generate web pages. - The
controllers
directory contains files for specific functionality for views, along with the files inroutes
for how they're invoked. - Add additional frontend assets to the
public
directory, then reference them in the files found injade/includes
, particularlyhead.jade
andscripts.jade
Running the tests
- Make sure your environment is setup to run Zombie.js
- With foreman
- run
foreman run npm test
from 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