Skip to content

PollSage is a web application that allows users to create and participate in polls. It provides a platform for users to gather opinions and make data-driven decisions.

License

Notifications You must be signed in to change notification settings

theritikchoure/pollsage

Repository files navigation



PollSage


PollSage

PollSage is a web application that allows users to create and participate in polls. It provides a platform for users to gather opinions and make data-driven decisions.

Features

  • User Registration and Authentication: Users can create an account and log in to access the PollSage application. Passwords are securely hashed and stored in the database.

  • Create Polls: Users can create polls by specifying the question and answer options. They can customize various settings for the poll, such as allowing multiple selections and setting an expiration date.

  • Vote on Polls: Users can participate in polls by selecting their preferred answer option(s). They can choose a single option or multiple options based on the poll's configuration.

  • View Poll Results: Users can view the results of a poll, including the number and percentage of votes for each option. The results are displayed in a visually appealing chart format.

  • Comment Sections: Participants can provide additional feedback and comments on polls. They can express their thoughts, share insights, or ask questions related to the poll.

  • Draft Saving: Users can save their polls as drafts and continue editing them later. This feature allows users to work on complex or time-consuming polls without losing progress.

  • Poll Expiration: Poll creators can set a start and end date for their polls. This feature ensures that the poll is active and accepting votes only within the specified timeframe.

  • Poll Visibility: Poll creators can choose to make their polls public or limit access to specific participants. They have the option to share the poll publicly or restrict it to a select group of individuals.

  • Password Protection: Poll creators can add password protection to their polls. This feature ensures that only users with the correct password can participate in the poll.

  • Share Polls: Users can easily share polls with others through social media or direct links. Sharing options include popular platforms like Facebook, Twitter, and email.

  • Poll Analytics: The application provides detailed analytics and insights on poll participation and results. Creators can analyze voting patterns, demographics, and trends to gain valuable insights.

Technologies Used

  • Back-end: Node.js, Express.js
  • Front-end: React.js, HTML, CSS, JavaScript
  • Database: MongoDB (NoSQL)
  • Authentication: JWT (JSON Web Tokens)
  • Other Libraries and Tools: Axios, React Router, Chart.js, Socket.io, bcrypt (for password hashing), etc.

Contribution

This project is open to contributions from anyone. If you would like to contribute, please follow the steps below:

  1. Fork the repository
  2. Clone the repository to your local machine
  3. Create a new branch
  4. Make your changes
  5. Commit and push your changes to the remote repository
  6. Create a pull request

Installation

To run the application locally, you must have Docker installed on your machine. You can download Docker from here.

1. Clone the Repository

Clone the repository from GitHub to your local machine.

git clone https://github.com/your-username/pollsage.git
cd pollsage

2. Docker Compose Setup

Make sure you have Docker and Docker Compose installed on your system.

3. Build and Run

Use Docker Compose to build and run the containers:

docker-compose up --build

This command will build the images and start the containers for MongoDB, Redis, Backend, and Frontend.

Screenshots

Home Page

License

This project is licensed under the MIT License. See the LICENSE

Contact

If you have any questions or suggestions, please feel free to contact me at [email protected]

Acknowledgements

Authors

Support

If you like this project, please consider giving it a ⭐.

About

PollSage is a web application that allows users to create and participate in polls. It provides a platform for users to gather opinions and make data-driven decisions.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Languages