"Engage. Vote. Decide — All in Real-Time!"
Votify is an easy-to-use online polling system designed for college events, competitions, and audience engagement. It empowers event organizers to create polls effortlessly, enabling participants to vote on various options in real-time.
- Instant Voting: Users can cast their votes quickly via phones or computers.
- Real-Time Results: Poll results are updated live as votes come in, keeping the experience engaging.
- Simple Poll Creation: Organizers can create and manage polls seamlessly.
- Anti-Cheating Measures: One vote per user through cookies or basic login ensures fairness.
- Mobile-Friendly: Optimized for any device, ideal for on-the-go events.
-
User Voting:
- Allow one vote per poll per user.
- Use cookies or email sign-up to track votes.
-
Poll Creation:
- Enable organizers to set up polls with a question and multiple options.
- Add a timer (e.g., 5 minutes per poll).
-
Live Results:
- Real-time result updates using JavaScript.
-
Poll Management:
- Admin dashboard to start/stop polls.
-
Anti-Cheating:
- Limit multiple votes through cookies or login.
- Frontend:
- HTML, CSS, and vanilla JavaScript.
- Backend:
- Node.js with Express for real-time updates using WebSockets.
- Database:
- MongoDB or JSON files for storing poll data.
- Real-Time Updates:
- Socket.io for live updates.
- Authentication:
- Basic cookies or email-based login.
- UI/UX:
- Clean and simple interface. Figma designs for core pages: Home, Poll, Results.
- Charts:
- Display results using Chart.js (bar or pie charts).
- Animations:
- Smooth transitions for voting and result updates.
- Home
- Create
- Join
- Logo
- Admin Console
- User Questions Look
- User Response Record
Follow these steps to set up the project locally:
-
Clone the repository:
git clone https://github.com/Somil2104/Votify.git
-
Navigate to the project directory:
cd Votify/votify
-
Install dependencies:
npm install
-
Start the server:
npm start
-
Access the application: Open
http://localhost:3000
in your browser.
Find the Figma design file here: Votify Figma Designs
- If working on a page, refer to comments in the Figma file.
- Make edits in your own copy of the file.
We welcome contributions to Votify! Please follow these steps to contribute:
- Fork the repository and create a new branch for your changes.
- Make your changes and ensure your code is clean and follows the project's coding standards.
- Write clear and concise commit messages.
- Submit a pull request with a detailed description of your changes.
If you find a bug or have a feature request, please open an issue in the Issues section. Include:
- A clear description of the problem.
- Steps to reproduce the issue (if applicable).
- Any relevant screenshots or logs.
- Follow JavaScript Standard Style.
- Write meaningful commit messages (e.g., "Fix typo in README").
- Ensure all new features are tested before submitting.
By contributing to this project, you agree that your contributions will be licensed under the MIT License.
This project is licensed under the MIT License.