Filesystem Structures
Provides ready-to-use filesystem organization structures tailored for various use cases, enabling users to set up and optimize their digital content management with adaptable templates. Supports productivity, development, media management, and personal knowledge organization through structured directory hierarchies.
Author

deathrashed
Quick Info
Actions
Tags
Filesystem Structures
A comprehensive collection of filesystem organization structures for different use cases, complexity levels, and workflows.
🎯 Purpose
This repository provides ready-to-use filesystem organization structures that you can adopt or customize for your own needs. Whether you're:
- Setting up a new system
- Reorganizing your files
- Looking for better ways to manage your digital content
- Implementing a productivity system
- Setting up a development environment
These structures offer practical starting points that are easy to implement and adapt.
📊 Structure Comparison
Structure | Complexity | Best For | Key Feature | Learning Curve |
---|---|---|---|---|
1: Basic | Low | General users, beginners | Standard directory conventions | Minimal |
2: Intermediate | Low-Medium | General users with more needs | Extended top-level organization | Low |
3: Advanced | High | Power users, professionals | Granular organization, symlinks | Steep |
4: Multimedia | Medium | Artists, media producers | Media type specialization | Moderate |
5: PARA Method | Medium | Knowledge workers | Actionability-based organization | Moderate |
6: Johnny.Decimal | Medium-High | Detail-oriented organizers | Numeric classification system | Moderate |
7: Action-Oriented (GTD) | Medium | Task-focused workers | Status-based organization | Moderate |
8: Time-Based | Low-Medium | Project managers, archivists | Chronological organization | Low |
9: Developer-Focused | High | Software developers | Code-specific organization | Moderate-Steep |
10: Deep Hierarchy | Very High | Taxonomists, librarians | Multi-level categorization | Very Steep |
11: Linux-Based | Medium-High | Linux users, sysadmins | FHS-inspired organization | Moderate |
📂 Available Structures
🌱 For Beginners
🧰 Special Purpose
|
🧠 Methodology-Based
⚙️ Advanced Approaches
|
🎭 Real-World Use Cases
Professional Scenarios
- Freelance Designer - Multimedia Structure for organizing client work, design assets, and project files
- Software Engineer - Developer-Focused Structure for managing codebases, development environments, and documentation
- Project Manager - Time-Based Structure combined with GTD approach for tracking deliverables and timelines
- Content Creator - Multimedia Structure for organizing production assets across multiple platforms
- Researcher/Academic - Deep Hierarchy or PARA Method for organizing papers, references, and research materials
- System Administrator - Linux-Based Structure for maintaining configs, scripts, and documentation
- Knowledge Worker - PARA Method or Johnny.Decimal for personal knowledge management
Personal Use Cases
- Family Computer - Basic Structure with separate user folders for each family member
- Personal Knowledge Base - Johnny.Decimal for organizing notes, references, and learning materials
- Media Collection - Multimedia Structure for organizing music, movies, and photos
- Home Project Management - GTD Structure for organizing renovation projects, financial planning, etc.
- Digital Archiving - Time-Based Structure for preserving family history, photos, and important documents
Hybrid Approaches
- PARA + Multimedia - Combining actionability-based organization with specialized media directories
- GTD + Developer - Task-oriented structure with specialized code organization
- Johnny.Decimal + Time-Based - Using numeric classification within chronological organization
- Basic + PARA - Starting with a simple structure and gradually implementing PARA principles
📋 Implementation
Each structure includes:
- A detailed
README.md
explaining its purpose, benefits, and implementation tips - A
structure_schema.txt
showing the complete directory hierarchy - The actual directory structure to explore and use as a template
🤖 Automation Scripts
Bash (macOS/Linux)
#!/bin/bash
# Script to create a basic file structure (Structure 1)
# Create main directories
mkdir -p ~/Documents/{Personal,Work,School,Financial}
mkdir -p ~/Downloads/{Installers,Documents,Images,Archives}
mkdir -p ~/Pictures/{Personal,Work,Wallpapers,Screenshots}
mkdir -p ~/Music/{Albums,Playlists,Podcasts,Audiobooks}
mkdir -p ~/Videos/{Movies,"TV Shows",Personal,Tutorials}
mkdir -p ~/Desktop/{"Current Projects","To Sort"}
echo "Basic directory structure created successfully!"
PowerShell (Windows)
# PowerShell script to create a basic file structure (Structure 1)
# Create main directories
$directories = @(
"$HOME\Documents\Personal",
"$HOME\Documents\Work",
"$HOME\Documents\School",
"$HOME\Documents\Financial",
"$HOME\Downloads\Installers",
"$HOME\Downloads\Documents",
"$HOME\Downloads\Images",
"$HOME\Downloads\Archives",
"$HOME\Pictures\Personal",
"$HOME\Pictures\Work",
"$HOME\Pictures\Wallpapers",
"$HOME\Pictures\Screenshots",
"$HOME\Music\Albums",
"$HOME\Music\Playlists",
"$HOME\Music\Podcasts",
"$HOME\Music\Audiobooks",
"$HOME\Videos\Movies",
"$HOME\Videos\TV Shows",
"$HOME\Videos\Personal",
"$HOME\Videos\Tutorials",
"$HOME\Desktop\Current Projects",
"$HOME\Desktop\To Sort"
)
foreach ($dir in $directories) {
if (!(Test-Path -Path $dir)) {
New-Item -ItemType Directory -Path $dir -Force
}
}
Write-Host "Basic directory structure created successfully!" -ForegroundColor Green
Python (Cross-Platform)
#!/usr/bin/env python3
# Script to create any filesystem structure based on input
import os
import sys
import json
from pathlib import Path
def create_structure(base_path, structure):
"""Recursively create directory structure from dict"""
for name, contents in structure.items():
path = os.path.join(base_path, name)
os.makedirs(path, exist_ok=True)
print(f"Created: {path}")
if isinstance(contents, dict):
create_structure(path, contents)
if __name__ == "__main__":
# Example structure (can be loaded from JSON file)
basic_structure = {
"Documents": {
"Personal": {},
"Work": {},
"School": {},
"Financial": {}
},
"Downloads": {
"Installers": {},
"Documents": {},
"Images": {},
"Archives": {}
},
"Pictures": {
"Personal": {},
"Work": {},
"Wallpapers": {},
"Screenshots": {}
},
"Music": {
"Albums": {},
"Playlists": {},
"Podcasts": {},
"Audiobooks": {}
},
"Videos": {
"Movies": {},
"TV Shows": {},
"Personal": {},
"Tutorials": {}
},
"Desktop": {
"Current Projects": {},
"To Sort": {}
}
}
home_dir = str(Path.home())
create_structure(home_dir, basic_structure)
print(f"Structure created successfully in {home_dir}")
🚀 Using These Structures
Browse & Explore
Navigate through each structure directory to understand its organization principles and advantages for different use cases. Compare multiple structures to find elements that might work best for your needs.
Copy & Implement
You can copy entire structures or portions that fit your needs:
# Clone the entire repository
git clone https://github.com/deathrashed/filesystem-structures.git
# Copy a specific structure to your home directory
cp -r filesystem-structures/Structure\ 1\ -\ Basic/* ~/
# For Windows users (using PowerShell)
Copy-Item -Path "filesystem-structures\Structure 1 - Basic\*" -Destination $HOME -Recurse
Customize & Adapt
These structures are starting points. Modify them to better match your specific requirements:
- Rename directories to match your terminology preferences
- Add or remove subdirectories based on your actual usage patterns
- Combine elements from multiple structures to create a hybrid system
- Create symlinks to frequently accessed locations
💡 Customization Examples
Photo Organization Hybrid
A photographer combined the Multimedia Structure with Time-Based approach:
Photos/
├── Projects/ # Active photo projects
│ ├── Client_Shoots/ # Client work organized by client name
│ └── Personal_Projects/ # Personal creative projects
├── Archive/ # Completed work
│ ├── 2021/
│ │ ├── Q1/ # Quarterly organization
│ │ ├── Q2/
│ │ └── ...
│ ├── 2022/
│ └── ...
├── Portfolio/ # Best work for showcase
│ ├── Landscapes/
│ ├── Portraits/
│ └── ...
└── Resources/ # Reference materials
├── Presets/
├── Textures/
└── Educational/
Developer Knowledge Base
A software developer combined Developer-Focused with Johnny.Decimal:
KnowledgeBase/
├── 10-19 Development/
│ ├── 11 Languages/
│ │ ├── 11.01 Python/
│ │ ├── 11.02 JavaScript/
│ │ └── ...
│ ├── 12 Frameworks/
│ │ ├── 12.01 React/
│ │ ├── 12.02 Django/
│ │ └── ...
│ └── ...
├── 20-29 Systems/
│ ├── 21 DevOps/
│ ├── 22 Databases/
│ └── ...
├── 30-39 Projects/
│ ├── 31 Personal/
│ ├── 32 Work/
│ └── ...
└── 90-99 Meta/
├── 91 Templates/
├── 92 Scripts/
└── ...
Small Business Admin Structure
A small business owner combined GTD with PARA:
Business/
├── Projects/ # Current business initiatives
│ ├── Website_Redesign/
│ ├── Product_Launch_Spring23/
│ └── ...
├── Areas/ # Ongoing business functions
│ ├── Accounting/
│ │ ├── A_Pending/ # Needs action
│ │ ├── A_Complete/ # Archived by year
│ │ └── A_Reference/ # Templates, etc.
│ ├── HR/
│ │ ├── H_Pending/
│ │ ├── H_Complete/
│ │ └── H_Reference/
│ └── ...
├── Resources/ # Business knowledge
│ ├── Marketing/
│ ├── Industry_Research/
│ └── ...
└── Archives/ # Completed projects and old items
├── 2021/
├── 2022/
└── ...
🛠️ Customization Tips
- Use Consistent Naming - Decide on naming conventions (CamelCase, kebab-case, snake_case) and apply them consistently
- Consider Automation - Tools like Hazel (macOS), File Juggler (Windows), or inotify scripts (Linux) can help maintain your structure
- Start Small - Implement a structure for new files first, then gradually organize existing files
- Include Metadata - Consider adding tagging, color-coding, or README files within directories to add context
- Review Periodically - Schedule regular reviews to adjust your structure as your needs evolve
🔄 Maintenance Recommendations
- Regular Reviews - Schedule monthly or quarterly reviews of your structure
- Inbox Processing - Maintain an inbox system for temporary files before proper filing
- Archive Old Content - Move inactive files to an archive to keep active directories lean
- Backup Strategy - Implement backups that respect your organizational structure
- Documentation - Keep notes on your customizations for future reference
🤝 Contributing
Contributions are welcome! Feel free to:
- Submit additional structure designs
- Suggest improvements to existing structures
- Share your experiences and customizations
- Report issues or suggest clarifications
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.