A modern platform for managing elections, designed specifically for GM Week and other student government elections at RPI.
- Simpler nominations
- Accessible candidate and party information
- Modern web goodness
This website is built in a modified MEAN stack (MariaDB, Express.js, Angular.js, and Node), and can be deployed using the following steps:
-
Clone this git repository by running the following command in a Git-enabled terminal:
> git clone https://github.com/wtg/elections.git
-
Navigate into the directory of the application:
> cd elections
-
If Node is installed on your computer, skip this step.
- Install Node here.
-
Install all necessary dependencies by running the following commands:
> npm install
-
If MySQL is installed on your computer, skip this step. Install MySQL or MariaDB (the open-source equivalent).
-
Make a copy of
devconfig.example.js
and name itdevconfig.js
. Provide details about the database connection (host, port, username, password), as shown in the example.- This could be completed in the terminal by running:
> cp devconfig.example.js devconfig.js
- Blank configuration variables are provided in the file.
- This could be completed in the terminal by running:
-
Run the server:
npm start
. This command will also create the database for the site if it doesn't currently exist.
Note: if NODE_ENV
is "production", npm start
will serve static files from the dist
folder, which you can have Webpack build by running npm run build
. If NODE_ENV
is "development", npm start
will automatically run Webpack and serve assets from memory.
- Navigate to
localhost:3000
in your browser, and pat yourself on the back—your instance is deployed.
This project was created by the Web Technologies Group.
The core development team consists of:
A list of all contributors can be found here.