π Random Winner Picker
Project Overview β’ Features β’ Installation β’ Usage β’ Contributing β’ License
The Random Winner Picker is a simple yet powerful Python application designed to randomly and fairly pick a winner from a provided list of participants. Ideal for giveaways, contests, or any scenario where a random selection is required.
- Fair Random Selection: Ensures unbiased and random selection of winners.
- Customizable Input: Accepts a list of participants via text file or manual entry.
- Lightweight and Easy to Use: Minimal dependencies and straightforward setup.
- Extensible: Codebase designed for easy modification and additional features.
-
Clone the repository:
git clone https://github.com/ronknight/random-winner-picker.git cd random-winner-picker
-
Create and activate a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Prepare your list of participants in a CSV file (e.g.,
data.csv
), with each participant's email listed in the first column. Example ofdata.csv
:email alice@example.com bob@example.com charlie@example.com
-
Run the script:
python app.py
-
The script will:
- Load the participant data from the specified CSV file.
- Simulate a "spinning wheel" animation to pick a random winner.
- Display the winner in the console output.
-
Example Output:
Welcome to the Random Winner Picker! π² Spinning the wheel: 100%|################| 30/30 [00:09<00:00, 3.28it/s] π And the winner is... π π alice@example.com! Congratulations! π
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature-name
- Commit your changes and push to your branch:
git commit -m "Add new feature" git push origin feature-name
- Open a pull request on GitHub.
This project is licensed under the MIT License.
Special thanks to the open-source community for inspiring and supporting this project.
This tool is designed for educational and entertainment purposes. The developer assumes no responsibility for misuse.