This repository contains Python scripts designed to automate common tasks. It is beginner-friendly and open for contributions during Hacktoberfest 2025.
The repository currently contains the following scripts:
file_renamer.pyβ Rename all files in a folder with a specific prefix and optional extension filter.image_compressor.pyβ Compress images individually or in bulk using Pillow.factorial_calculator.pyβ Calculate the factorial of a non-negative integer.password_generator.pyβ Generate strong, random passwords with customizable criteria.Folder Cleaner- Delete files older than n days.PDF Merger- Merge multiple PDFs into one.Bulk Image Resizer- Resize all images to a fixed width.CSV to Excel Converter- Convert all CSV files in a folder to Excel.To Do List- A simple Python-based To-Do List Manager to add, view, and remove tasks directly from the terminal.Emotion Detection- Detect emotions from webcam feed using deep learning.Object Detection- Detects Objects from webcam feed using AI/ML.TicTacToe- In this game the player has to play through the 3X3 grid on 3X3 where firt player will play the turn and subsequently the secong player moves would be restricted in that child board.Wordle Game- A Python implementation of Wordle where you guess a 5-letter word in 6 attempts with feedback for correct letters and positions.Email Sender- Send emails to multiple recipients with optional attachments, including logging and error handling.Library Management System- A Python program to manage books, track borrowing/returning, and store data persistently.
This collection aims to help users automate repetitive tasks efficiently and serve as an introduction to Python scripting and open-source contributions.
Before running the scripts, ensure you have the following installed:
- Python 3.9+
- Git
- Optional: Node.js (for additional scripts or integration)
- Fork the repository on GitHub.
- Clone your fork to your local machine:
git clone https://github.com/YOUR-USERNAME/Hacktoberfest-2025.git
cd Hacktoberfest-2025- Install dependencies:
pip install -r requirements.txtIf using Node.js scripts:
npm install- File Renamer
from Scripts.file_renamer import rename_files
rename_files("documents", prefix="report", extension=".txt")- Image Compressor
from Scripts.image_compressor import compress_folder
compress_folder("images","compressed_images",quality=60)- Factorial Calculator
from Scripts.factorial_calculator import factorial
print(f"Factorial of 5: {factorial(5)}")
print(f"Factorial of 0: {factorial(0)}")- Password Generator
from Scripts.password_generator import generate_password
print(f"Generated password: {generate_password(length=16, use_symbols=False)}")Both scripts include detailed docstrings and inline comments to guide usage.
- Emotion Detection
- make sure you are running it on Python 3.9 or above till 3.11.5
- make sure you have keras, tensorflow, opencv-python, numpy installed. You can install them using:
pip install keras tensorflow opencv-python numpyin terminal.
- run the script using:
python Scripts/Emotion_Detection/EmotionDetection.pyin terminal
- Object Detection
- make sure you are running it on Python 3.9 or above
- make sure you have tkinter, opencv-python, numpy, Pillow. You can install them using:
-
pip install tkinter opencv-python numpy Pillow
- make sure you download YOLOV3.weights file, check readme file in
/scripts/Object-Detection-System/. - run the script using:
python Scripts/Object-Detection-System/main.py
We welcome contributions of all kinds from improving documentation to adding new scripts.
- Review the [CONTRIBUTION.md] guide.
- Create a new branch for your changes:
git checkout -b feat/your-feature-name- Commit your changes with a descriptive message:
git commit -m "docs: improve README and add usage examples"- Push your branch and open a Pull Request.
This repository uses GitHub Actions to automate code quality checks and ensure consistency. All automations are defined in the .github/workflows directory.
We have a workflow that automatically runs the flake8 linter on every pull request. This process checks the Python code for common programming errors, style issues, and complexity.
- When a pull request is opened, the workflow is triggered automatically.
- It installs Python and the project's dependencies.
- It runs
flake8to analyze the code.
If the linter finds any critical errors, the workflow will fail. A "pass" or "fail" status will be reported on the pull request page. All checks must pass before a pull request can be merged. This ensures that all contributions adhere to our project's coding standards.
.
βββ Scripts/ # Contains Python scripts
β βββ file_renamer.py
β βββ image_compressor.py
βββ .gitignore # Files to ignore in Git
βββ CONTRIBUTING.md # Contribution guidelines
βββ LICENSE # MIT License file
βββ README.md # This file
βββ WORKFLOW.md # Git and GitHub workflow guide
|
MILAN SINGHAL |
strikkerJalaj-25 |
Arnav Parmar |
Vedansh |
runn3r |
Arindam Shukla |
|
Anshul-Bartwal |
Jalaj Singhal |
Manav Desai |
csr76 |
Jay shah |
Harsh Rathore |
Thanks to these wonderful people for their contributions!
For questions or support, open an issue and tag the maintainer @milansinghal2004.