This repository contains my solutions to Advent of Code 2025, covering 12 Days Total.
Each day's puzzles are solved in Python and organized as:
Day X/X-1.py— Part 1 solutionX-2.py— Part 2 solutionX-input.txt— Puzzle input for both parts
The utils/ folder includes helper utilities to auto-generate day folders and starter files.
⚠️ Utility scripts are designed for Linux/macOS.
| Progress | Status |
|---|---|
| █████████░░░ | 9/12 Days Completed |
| Day | Part 1 | Part 2 |
|---|---|---|
| Day 1 | ⭐ | ⭐ |
| Day 2 | ⭐ | ⭐ |
| Day 3 | ⭐ | ⭐ |
| Day 4 | ⭐ | ⭐ |
| Day 5 | ⭐ | ⭐ |
| Day 6 | ⭐ | ⭐ |
| Day 7 | ⭐ | ⭐ |
| Day 8 | ⭐ | ⭐ |
| Day 9 | ⭐ | ☐ |
| Day 10 | ⭐ | ☐ |
| Day 11 | ⭐ | ⭐ |
| Day 12 | ⭐ | ☐ |
git clone https://github.com/theamankumarsingh/advent-of-code-2025.git
cd advent-of-code-2025To enable helper utilities (aoc, create_day, update_progress) as commands, run:
python3 -m venv .venv && echo 'export PATH="$VIRTUAL_ENV/../utils:$PATH"' >> .venv/bin/activateActivate the environment:
source .venv/bin/activateDeactivate:
deactivateIf you delete .venv/, simply run the setup command again.
All solution files are executable and contain a shebang: You can run them directly:
./"Day 1"/1-1.py
./"Day 1"/1-2.pyOr from inside a day folder:
cd "Day 1"
./1-1.pyIf a file is not executable:
chmod +x "Day 1"/1-1.pyThe aoc command is a convenience wrapper to run solutions without typing full paths.
aoc 5 2 # run solution for Day 5, Part 2create_day 5 # creates the folder and starter files for Day 5
create_day # uses today's date
update_progress # updates README progressFor example, create_day 5 generates:
Day 5/
├── 5-1.py
├── 5-2.py
└── 5-input.txt
Thanks for checking this out! 🎅🎁