A Windows CLI tool that scans all your drives to find old coding projects. No dependencies — pure Python stdlib.
- Three scan speeds — Fast, Medium, or Slow depending on how thorough you need to be
- All drives — scans C:, D:, E: and any other attached drives automatically
- Smart detection — identifies projects by marker files (
requirements.txt,package.json,Cargo.toml,Makefile, etc.) - 14+ languages/stacks — Python, Node/JS, Rust, Go, C/C++, Java, Kotlin, C#/.NET, Ruby, PHP, Docker, Arduino, Lua, and more
- Three output formats — a
.txtfile, a.jsonfile, or a folder with one file per project type - Results on your Desktop — always easy to find after the scan
- Windows 10 or 11
- Python 3.10 or newer
- No third-party packages required
python main.py
The tool will walk you through three prompts:
- Scan speed — pick Fast, Medium, or Slow
- Drives — scan all drives or choose specific letters
- Output format —
.txt,.json, or a folder
Then press Enter and wait. Results are saved to your Desktop.
| Mode | Depth | Hidden files | Estimated time |
|---|---|---|---|
| Fast | 5 lvls | Skipped | 1–3 min |
| Medium | 8 lvls | Skipped | 3–8 min |
| Slow | 15 lvls | Included | 10+ min |
Fast is good for a quick sweep of obvious project folders.
Medium is the default sweet spot.
Slow digs into hidden folders and very deep paths — useful if you're missing projects.
projects_20260406_143201.txt
Plain text, grouped by project type with path, last-modified date, and size.
projects_20260406_143201.json
Machine-readable. Each project has name, path, type, size_kb, modified.
ProjectScan_20260406_143201/
00_INDEX.txt ← master list of all types and counts
Python.txt
Node_JS.txt
Rust.txt
...
One file per detected project type, sorted by last-modified date.
| Marker file(s) | Type detected |
|---|---|
requirements.txt, pyproject.toml, etc. |
Python |
package.json, yarn.lock, bun.lockb |
Node/JS |
Cargo.toml |
Rust |
go.mod |
Go |
CMakeLists.txt, Makefile |
C/C++ |
pom.xml, build.gradle |
Java / Kotlin |
*.sln, *.csproj |
C#/.NET |
Gemfile |
Ruby |
composer.json |
PHP |
Dockerfile, docker-compose.yml |
Docker |
*.ino |
Arduino |
*.rockspec |
Lua |
index.html |
Web |
.git |
Git Repo |
project_finder/
│
├── main.py ← entry point
│
├── core/
│ ├── scanner.py ← filesystem walker
│ ├── detector.py ← project type detection logic
│ └── profiles.py ← speed profiles + skip-dir constants
│
├── output/
│ └── writer.py ← txt / json / folder writers
│
├── ui/
│ └── menu.py ← interactive CLI prompts
│
├── utils/
│ ├── console.py ← ANSI colours, banner, summary printer
│ └── drives.py ← Windows drive enumeration
│
├── README.md
└── LICENSE
- Run from Windows Terminal or PowerShell for full colour support
- If a project isn't found, try Slow mode — it includes hidden folders
- The
.jsonoutput is easy to import into a spreadsheet or another script - Skipped automatically:
node_modules,__pycache__,.venv,AppData,Windows,Program Files, build artefacts, and other system noise
MIT — see LICENSE