A structured filesystem template combining PARA, Johnny Decimal, and real-world lessons.
Most people organize files by gut feeling. Folders grow organically, naming is inconsistent, and finding anything older than a week requires a search tool. C-PARAMDS fixes this with a principled structure you can set up in seconds and maintain for years.
It combines two proven methodologies:
- PARA Method (Tiago Forte) — Categorize everything by actionability: Projects (active, with deadlines), Areas (ongoing responsibilities), Resources (reference material), Archives (inactive items).
- Johnny Decimal — Give every folder a fixed numeric address so it always sorts the same way and you always know where to look.
C-PARAMDS extends PARA with three additional ranges that modern digital life demands: Media (50-59), Development (60-69), and Sync (70-79), plus a first-position Inbox (00-09) for unsorted incoming files.
The "C" root directory is a deliberate choice — it mirrors the drive-letter convention, keeps repo-level files separate from your organized data, and gives you a single, portable root to back up, sync, or move between machines.
git clone https://github.com/3D3Q3/C-PARAMDS.git
cd C-PARAMDS
# Create the full structure in ./C
bash setup_folders.sh
# Or target your home directory
bash setup_folders.sh --target ~/C
# Preview without creating anything
bash setup_folders.sh --dry-run
# Top-level categories only (add subcategories later)
bash setup_folders.sh --minimal --target ~/CC/
├── 00-09_Inbox/ Unsorted incoming files — sort weekly!
│
├── 10-19_Projects/ Active work with defined goals and deadlines
│ ├── 11_Client/ Client and work projects
│ ├── 12_Personal/ Personal projects
│ └── 13_Experimental/ Experiments and prototypes
│
├── 20-29_Areas/ Ongoing responsibilities (no end date)
│ ├── 21_Health/ Medical, fitness, nutrition
│ ├── 22_Finances/ Banking, taxes, investments
│ ├── 23_Home/ Home maintenance, appliances, utilities
│ ├── 24_Career/ Resume, certifications, reviews
│ └── 25_Identity/ Personal branding, domains, digital identity
│
├── 30-39_Resources/ Reference material and topics of interest
│ ├── 31_Learning/ Tutorials, courses, study material
│ ├── 32_Reference/ Documentation, manuals, collections
│ └── 33_Templates/ Reusable document and code templates
│
├── 40-49_Archives/ Completed or inactive items from above
│
├── 50-59_Media/ Media library
│ ├── 51_Books/ Ebooks, audiobooks, PDFs
│ ├── 52_Music/ Music collection
│ ├── 53_Movies/ Films
│ ├── 54_TV-Shows/ Television series
│ ├── 55_Images/ Graphics, artwork, wallpapers
│ ├── 56_Photos/ Personal photography
│ └── 57_Videos/ Video files
│
├── 60-69_Development/ Code and dev environments
│ ├── 61_Servers/ Server configs and infrastructure
│ ├── 62_Software/ Installed software and licenses
│ ├── 63_Repos/ Git repositories
│ └── 64_Dotfiles/ Shell configs, editor settings, dotfiles
│
└── 70-79_Sync/ Cloud and device synchronization
├── 71_Cloud-Primary/ Main cloud provider (Google Drive, etc.)
├── 72_Cloud-Secondary/ Backup cloud provider (OneDrive, etc.)
└── 73_Device-Sync/ Device-to-device sync staging (Syncthing, etc.)
The numbering is intentional and serves three purposes:
| Pattern | Example | Purpose |
|---|---|---|
XX-YY_Name |
10-19_Projects |
Range — top-level category with room for 10 subcategories |
XX_Name |
12_Personal |
Category — a subcategory within a range |
XX.01_Name |
12.01_My-App |
Item — a specific project, folder, or topic |
Zero-pad your decimals. Always 12.01, never 12.1. This keeps sort order correct through 12.09, 12.10, 12.11, etc.
00-09 Inbox sorts first — this is deliberate. You see your unsorted files every time you list the directory, which creates healthy pressure to triage them.
10-unit gaps leave room for future subcategories. You can add 14_Freelance inside Projects or 26_Hobbies inside Areas without renumbering anything.
| Rule | Good | Bad |
|---|---|---|
| Use hyphens, not spaces | My-Cool-Project |
My Cool Project |
| Title-Case for folders | 12.01_Budget-Tracker |
12.01_budget_tracker |
| Date prefix for files | 2026-04-12-meeting-notes.md |
meeting notes april.md |
| Version suffix | proposal-v02.pdf |
proposal-final-FINAL.pdf |
| No special characters | Client-ABC |
Client (ABC) |
See docs/NAMING-CONVENTIONS.md for the full guide with media-specific naming rules.
The number one bad habit with any organization system is the desktop dump: periodically sweeping everything from your desktop into a date-stamped folder and forgetting about it. This defeats the entire purpose.
Instead:
- Everything new goes into
00-09_Inbox/ - Set a weekly 15-minute triage calendar reminder
- For each file: move it to its proper category, or delete it
- If a file has lived in Inbox for 30+ days, it either belongs somewhere or should be deleted
- Use
scripts/sort-inbox.shto speed this up — it suggests destinations by file type
Your operating system has default directories (Desktop, Downloads, Documents, Music, Pictures, Videos) that applications dump files into. These compete with C-PARAMDS unless you integrate them.
Option 1: Symlinks — Replace OS directories with symlinks pointing into C-PARAMDS:
bash scripts/integrate.sh --symlink-into --target ~/C
# ~/Desktop → ~/C/00-09_Inbox/
# ~/Downloads → ~/C/00-09_Inbox/
# ~/Music → ~/C/50-59_Media/52_Music/
# ~/Pictures → ~/C/50-59_Media/55_Images/
# ...Option 2: XDG Redirect (Linux only) — Tell the OS that C-PARAMDS folders are the default directories:
bash scripts/integrate.sh --xdg-redirect --target ~/CBoth modes support --dry-run, --undo, and --skip. See docs/LINUX-INTEGRATION.md for the full guide.
Add this to your ~/.bashrc or ~/.zshrc:
source /path/to/C-PARAMDS/scripts/shell-helpers.shThis gives you:
| Command | Action |
|---|---|
cdc |
Jump to C/ root |
cdp |
Jump to Projects |
cda |
Jump to Areas |
cdr |
Jump to Resources |
cdm |
Jump to Media |
cdd |
Jump to Development |
cdi |
Jump to Inbox |
inbox |
Show inbox contents |
newproj "Name" |
Scaffold a new project |
audit |
Run the audit script |
cdfind term |
Fuzzy-find a directory in C/ |
| Script | Purpose |
|---|---|
setup_folders.sh |
Create the directory structure (--target, --minimal, --full, --dry-run) |
scripts/sort-inbox.sh |
Interactive inbox triage — suggests destinations by file type |
scripts/audit.sh |
Check for naming violations, secrets, duplicates, empty directories |
scripts/archive.sh |
Move completed projects to Archives with date stamps |
scripts/integrate.sh |
Link OS directories (Desktop, Downloads, etc.) into C-PARAMDS |
scripts/newproject.sh |
Scaffold a new project with templates and auto-numbering |
scripts/shell-helpers.sh |
Bash aliases and functions for fast navigation |
This template is a starting point. Customize it for your life:
- Add subcategories within any range:
26_Hobbies/inside Areas,14_Freelance/inside Projects - Rename Sync folders for your cloud providers:
71_Google-Drive/,72_OneDrive/ - Add Media subcategories:
58_Podcasts/,59_Audiobooks/ - Extend Development:
65_Databases/,66_Containers/
Don't over-create. Start with the defaults and add subcategories only when you actually have files that need them. Empty directories are organizational debt.
| Tool | Purpose | C-PARAMDS Category |
|---|---|---|
| Calibre | Ebook library management | 51_Books |
| MusicBrainz Picard | Auto-tag music files | 52_Music |
| rclone | Cloud sync and backup automation | 70-79_Sync |
| Syncthing | Peer-to-peer device sync | 73_Device-Sync |
| fzf | Fuzzy finder for fast navigation | shell-helpers.sh |
| fd | Fast file finder | audit.sh |
| GNU Stow | Dotfile management | 64_Dotfiles |
| trash-cli | Safe deletes (recoverable) | General use |
| zoxide | Smart directory jumping | Navigation |
| ncdu | Disk usage visualization | Maintenance |
- Naming Conventions — Detailed naming rules with examples
- Media Guide — How to organize books, music, movies, TV, photos
- Backup Strategy — The 3-2-1 backup rule and automation
- Tips & Anti-Patterns — Lessons learned from real usage
- Linux Integration — Symlinks, XDG, shell setup, recommended tools
- Cheatsheet — One-page quick reference
- PARA Method by Tiago Forte
- Johnny Decimal by Johnny Noble
- Dewey Decimal System — Numbering inspiration
See CONTRIBUTING.md for guidelines on suggesting categories, submitting scripts, and code style.