The I.N.S.P.I.R.E. Bus Poll System is a web-based application that allows users to participate in a time-based poll to determine the most convenient bus departure time. Users can select their preferred departure time from the available options, and once they submit their choice, they receive a token (or ticket). The token includes the date and time of submission as well as the chosen departure time, and users are required to carry a screenshot of the token for verification.
- Poll system with various bus departure time options.
- Time-limited polls for user participation.
- Token generation upon submission with details of choice and timestamp.
- Simple and intuitive interface for ease of use.
Before running the project locally, ensure you have the following installed:
-
Clone the repository:
git clone https://github.com/your-username/INSPIRE-Bus-Poll.git cd INSPIRE-Bus-Poll
-
Install dependencies:
Navigate to the project directory and install the required Node.js packages:npm install
-
Create your enviornment variables:
Required environment variables:
MONGO_URL
: Connection string to establish connection to the MongoDB server.JWT_KEY
: A secure key for jsonwebtoken. Can be created by runningopenssl rand -base64 32
in the terminal.
Create a
.env
file and store the values of the above mentioned environment variables. -
Run the project locally:
Start the development server:npm start
-
Access the application:
Open your browser and visit:http://localhost:3000
-
Access the Poll:
Once the application is running, users will see a list of time options for bus departure. -
Select a Time:
Choose your preferred departure time from the available options. -
Submit Your Choice:
After selecting a time, click the "Submit" button. You will receive a token that includes:- The date and time of your submission.
- The bus departure time you selected.
-
Save Your Token:
Take a screenshot of your token, as it will be required to verify your choice at the bus station.
We welcome contributions from the community! Here’s how you can get involved:
Checkout Guideline
- Follow JavaScript Standard Style.
- Keep code modular and reusable.
- Write meaningful commit messages.
This project is licensed under the MIT License. You’re free to use, modify, and distribute this project under the terms of this license.