node.js based webapp to manage Hackathon events
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
config Adds support for password reset through email sent through default se… Feb 7, 2016
models Adds support for t-shirt requests and shipping Jan 23, 2016
public Updates libs to latest, updates footer Oct 13, 2018
test Disables random URL test May 9, 2016
views Updates libs to latest, updates footer Oct 13, 2018
.gitattributes adjusts lang attribute Dec 22, 2015
.gitignore Adds gitignore Oct 13, 2018
.travis.yml Updates travis node to v6 Oct 13, 2018
LICENSE Initial commit Nov 9, 2015 Fixes toc to demo Oct 13, 2018
app.js Don't exit when db is down May 9, 2016
package.json Updates libs to latest, updates footer Oct 13, 2018

Codacy Badge Build Status Dependency Status devDependency Status license

Table of Contents


See a live demo here

The demo instance often goes to sleep after inactivity, cilck and wait about a minute for it to awake.


  • Local Authentication using Email and Password
  • OAuth 1.0a Authentication via Twitter
  • OAuth 2.0 Authentication via Facebook, Google, GitHub, LinkedIn, Instagram
  • Flash notifications
  • Create hack
    • Title
    • picture
    • description
    • category
    • season
  • List hacks
  • Search
    • By title
    • category
    • season
  • Join hack
  • Add comments
  • List prizes
    • Name
    • picture
    • description
  • Rules page
  • User profile
    • Gravatar
    • Profile Details
    • Change Password
    • Forgot Password
    • Reset Password
    • Link multiple OAuth strategies to one account
    • Delete Account
  • CSRF protection
  • Admin
    • Add/edit categories
    • Add/edit seasons
    • Add/Edit prize
    • Edit rules
    • Nominate hack
  • Beautifier



# Get the latest code
$ git clone myproject
$ cd myproject
$ git remote rm origin

# Install NPM dependencies
$ npm install

$ node app.js

Obtaining API Keys

To use any of the included APIs or OAuth authentication methods, you will need to obtain appropriate credentials: Client ID, Client Secret, API Key, or Username & Password. You will need to go through each provider to generate new credentials.

I have included dummy keys and passwords from **Hackathon Starter ** . But don't forget to update them with your credentials when you are ready to deploy an app.


  • Admin user? Starting with 1.0.2, the first user to signup with email/passowrd becomes admin. Admin users can make other users admin in the admin users page.


If something is unclear, confusing, or needs to be refactored, please let me know. Pull requests are always welcome, but due to the opinionated nature of this project, I cannot accept every pull request. Please open an issue before submitting a pull request. This project uses Airbnb JavaScript Style Guide with a few minor exceptions. If you are submitting a pull request that involves Jade templates, please make sure you are using spaces, not tabs.


The MIT License (MIT)