This repository has been archived by the owner. It is now read-only.
Start writing a web app already, with Twitter's Bootstrap framework
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
controllers
databases
jade
public
routes
test
.gitignore
.jshintignore
.travis.yml
Gruntfile.js
LICENSE
Procfile
README.md
app.js
changelog.md
config.js
package.json

README.md

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.

Branch Build Status
Master
Develop

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 the node_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 git@github.com/shakeelmohamed/egress-bootstrap.git
  • You don't need to declare this module as a dependency in your project's package.json file.

Current problems (marked with a TODO)

Getting Started:

  1. If it does not exist, create a .env file in the root directory of this project.
  2. 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

  1. Modify the config object in config.js to modify the application settings.
  2. Running foreman start will serve the application on the post listed in config.js (defaulting to 5000), and process the DATABASE_URL variable, locally. Alternatively, running node app.js will do the same thing if you don't want to use foreman.

Deploying to Heroku:

  1. Authenticate via the Heroku command line, heroku login
  2. Set your environment variables on Heroku
    • If you've already setup your .env file as documented above, simply run heroku config:push
    • Otherwise you can run the following command: heroku config:set DATABASE_URL=postgres://<username>:<password>@<host>:<port>/<dbname>?ssl=true Then run heroku config:push
  3. Push your code up to your Heroku app
  4. 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 in routes for how they're invoked.
  • Add additional frontend assets to the public directory, then reference them in the files found in jade/includes, particularly head.jade and scripts.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
  • Without foreman
    • run npm test

Validating JS and Jade files

  • Run grunt

Dependencies

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