A Real-Time Ranked Based Choice Voting App
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
Introducing Ranker, the ultimate solution for making quick decisions among friends and indecisive groups! Ranker is not just your average voting app; it's a cutting-edge, real-time decision-making tool designed to streamline the process of ranking choices and gathering immediate feedback from all connected participants.
With Ranker, you can harness the power of real-time synchronization, ensuring that the data is instantly updated across all connected front-end client applications. Gone are the days of waiting for results or struggling to reach a consensus—Ranker makes the decision-making process seamless, efficient, and, most importantly, fun!
Whether you're trying to choose a restaurant for dinner, select a movie for movie night, or make any other group decision, Ranker empowers you to create ranked choice votes effortlessly. Simply create a vote, invite your friends or collaborators, and watch as the rankings evolve in real-time, giving you a clear view of everyone's preferences.
In order to run the application, you will need to have some prerequisite tools installed.
First, you'll need to be able to run docker-compose
command. If you are able to install Docker with Docker Desktop, that is probably the easiest solution.
Second, you'll need NodeJS for both the client and server applications. I recommend you use nvm or nvm-windows and make sure to use the same version of node found in the .nvmrc file at the root of the project. You can run nvm use
from the root of the project to make sure you're using the same version of node as me.
With the everything installed and with Docker running on your machine, you can launch a docker container running redis-json
, the backend Nest JS application, and the front-end react application by running the following from the root of the project.
npm run start
The project root's package.json
file and its npm scripts are basically just for convenience of running all applications and a database at once.
You can also run these applications separately by running the appropriate npm scripts inside of each project's package.json
file.
- Real-Time Synchronization: Enjoy the benefits of instant data updates as all participants rank their choices simultaneously, ensuring that everyone's input is accounted for immediately.
- Effortless Decision-Making: Say goodbye to endless debates and long discussions. Ranker's intuitive interface simplifies the process of ranking choices, making it quick and easy to reach a decision.
- Customizable Voting: Tailor your votes to suit your specific needs, whether it's selecting multiple options, setting a time limit, or allowing participants to add their own choices.
- Invite and Collaborate: Invite your friends, family, or colleagues to join your vote, allowing for group collaboration no matter where everyone is located.
- User-Friendly Interface: Ranker boasts an elegant and user-friendly design that ensures a smooth and enjoyable decision-making experience.
No more indecision, no more waiting—Ranker is your go-to app for fast and efficient decision-making. Download Ranker today and revolutionize the way you and your friends make choices!
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt
for more information.
Prasenjit Sutradhar - @twitter_handle - prasenjitsutradhar3433@gmail.com
Project Link: https://github.com/Prasenjit-3433/Rankr