Programming · Python
Automate a boring task with a script
Write a script that renames and sorts a messy folder of files by type and date.
- DifficultyEasy
- Estimated time2–7 days
- Budget₹0
- ClassClass 9 to college
- TeamSolo
- You needComputer only
Prerequisites: None beyond your class work
Original · by TechnifyedSoftware ProjectBeginner friendlyFree to doComputer only
Overview
Write a script that renames and sorts a messy folder of files by type and date.
Skills you will use
Materials and tools
- Computer with Python 3
- A copy of a messy folder to test on
Tools and software
Step-by-step roadmap
Start
You will finish with: a script with a dry-run mode and an undo log.
- 1
Prerequisites
Nothing special to know first. Then collect the 2 items in the materials list.
- 2
Learn
Read up on python: automation, files, scripting. Your textbook chapter and one short video are enough.
- 3
Plan
List the features for version one, sketch the screens or data flow and pick the tools. Keep the first version small.
- 4
Build
- List the files and read their type and date.
- Decide a folder structure such as year and type.
- Move each file, creating folders as needed.
- Add a dry-run mode that only prints what would happen.
- Log every move so it can be undone.
- 5
Test
Try it with wrong, empty and unusual input, and ask someone else to use it without your help.
- 6
Document
Write a README: what it does, how to run it, screenshots and what you learned. Report structure
- 7
Present
Show a live demo of one complete task, then the design and the hardest problem you solved. Presentation structure
- 8
Publish
Put the code on GitHub with the README and, if you can, deploy a live demo.
Expected outcome
A script with a dry-run mode and an undo log.
Other versions of this project
Advanced version
Detect duplicate files by comparing their contents.
Ways to do this project
Text marked "You write this" is a prompt for your own work; everything else is specific to this project.
Use this as the outline of your README or case study.
- Problem
- You write thisThe problem in one or two sentences.
- Why it matters
- You write thisWho has this problem and what it costs them.
- What was built
- A script with a dry-run mode and an undo log.
- Technology
- Python
- Architecture
- You write thisOne diagram: the parts and how data moves between them.
- Implementation
- You write thisThe 5 build steps in your own words, with one code or design decision you are proud of.
- Challenges
- You write thisThe hardest bug or decision, and how you got past it.
- Results
- You write thisNumbers: accuracy, speed, users, survey answers.
- Demo and code
- You write thisA link to a live demo or a short video, and to the GitHub repository.
- Lessons learned
- You write thisWhat you would do differently next time.
- Future improvements
- Detect duplicate files by comparing their contents.
- Problem
- Write a script that renames and sorts a messy folder of files by type and date.
- Target user
- You write thisOne specific person: who they are and when they would use this.
- Solution
- Write a script that renames and sorts a messy folder of files by type and date.
- First version (MVP)
- You write thisThe smallest version that shows the idea working once, end to end.
- Tech stack
- Python
- Architecture
- You write thisA quick sketch of the parts and how they connect.
- Demo
- You write thisThe one scenario you will show live, start to finish, in under two minutes.
- Stretch goals
- Detect duplicate files by comparing their contents.
Team roles
Plan by length
24-hour
- Hours 0–2: agree the problem, the user and the one thing the demo must show
- Hours 2–16: build only the first version
- Hours 16–20: test the demo path end to end and fix what breaks
- Hours 20–24: slides, a 2-minute demo script and a backup recording
48-hour
- Evening 1: problem, user, sketch and task split
- Day 1: first version working end to end
- Day 2 morning: one stretch goal and testing
- Day 2 afternoon: polish, slides and demo practice
1-week
- Day 1: research the problem and talk to two possible users
- Days 2–4: first version
- Day 5: stretch goals
- Day 6: testing and write-up
- Day 7: demo video and presentation
Report and presentation
Report structure
- Title and summary
- Problem and target user
- Features
- Tools and technology
- Design: architecture, data model or screens
- Implementation
- Testing
- Results and screenshots
- Challenges
- Future improvements
- References
Presentation structure
- The problem
- Who it is for
- Live demo
- How it is built (one diagram)
- The hardest part
- Testing and results
- What you learned
- What comes next
Viva questions
Prepare your own answers to these before you present.
- What is the aim of your project, in one sentence?
- What is the principle behind it?
- Why did you choose these materials or tools?
- What result did you get, and was it what you expected?
- What went wrong and how did you fix it?
- How could this be improved or used in real life?
Resources
Source and attribution
Original
Written by Technifyed. Free to use for your own school or college project; write the report in your own words. Added 1 Oct 2026.
Similar projects
More Programming projects
Programming · Python
Build a Snake game
Program the classic Snake with scoring, growing length and game over.
Programming · Python
Make a to-do list app that saves to a file
Build a command-line task manager that adds, completes, deletes and saves tasks between runs.
Programming · Python
Build a calculator with a graphical interface
Make a desktop calculator with buttons, a display and keyboard support.
Programming + EdTech and Study Tools
Write a quiz game that reads questions from a file
Build a quiz program with a question bank in a file, shuffled questions and a final score.
Same tools
Cybersecurity + Pure Mathematics
Implement classic ciphers and break them
Write Caesar and substitution ciphers, then crack them with frequency analysis.
Cybersecurity · Authentication
Build a password strength checker
Score a password's strength, explain why, and estimate how long it would take to guess.
Data · Data Analytics
Explore a dataset and tell its story
Pick a public dataset, ask five questions of it and answer each with a chart.
Artificial Intelligence · NLP
Build a rule-based chatbot for school FAQs
Answer common questions about your school with keyword matching and a fallback reply.
Two-subject alternatives
Pure Mathematics + Programming
Visualise fractals with code
Draw the Koch snowflake, Sierpinski triangle and Mandelbrot set and measure a fractal dimension.
Pure Mathematics + Programming
Map your school as a graph and find shortest paths
Model corridors and rooms as a graph and find the fastest route between any two rooms.
Physics + Programming
Simulate projectile motion with air drag in Python
Plot real trajectories with air resistance and compare them with the textbook parabola.
Music, Theatre and Writing + Programming
Create generative art with code
Write programs that draw a different artwork every time they run and curate a series of ten.
Same difficulty and budget
Software Development · Frontend
Make a personal portfolio website
Design and publish a fast, mobile-friendly site that shows who you are and what you have built.
Programming · JavaScript
Build a typing speed tester
Show a passage, time the user typing it and report words per minute and accuracy.
Programming · Java
Simulate a bank account system
Model accounts, deposits and withdrawals with classes, and keep a transaction history.
Cybersecurity · Privacy
Audit your digital footprint
Find what is publicly visible about you online and tighten your privacy settings.