A powerful toolkit for organizing markdown documentation and extracting best practices from Git history. Creates multiple organizational facets with AI-friendly instructions for maintaining current best practices.
- π Time-based Organization - Automatically sorts documents by modification date
- π SDLC Lifecycle Views - Organizes by development phases (planning, implementation, testing, etc.)
- βοΈ System Function Categories - Groups by functional areas (admin tools, UI, integration, etc.)
- π Comprehensive Index - Single
index.mdfile with clickable links to all documentation - π Date Sorting - Files sorted by modification time (newest first) with timestamps
- π Symlink-based - Non-destructive organization preserving original file locations
- π¨ VS Code Friendly - Optimized for VS Code explorer and markdown preview
- π Commit History Analysis - Analyzes Git patterns to identify successful practices
- π€ AI Integration Instructions - Generates guidelines for AI assistants to use latest practices
- π« Deprecated Pattern Detection - Identifies and documents superseded approaches
- π Evolution Timeline - Tracks how practices have evolved over time
- π·οΈ Categorical Organization - Groups practices by domain (architecture, development, etc.)
- π Recency-based Views - Prioritizes recent discoveries vs established patterns
# Add to your project as submodule
git submodule add https://github.com/yourusername/docs-organizer.git tools/docs-organizer
# Organize documentation
cd tools/docs-organizer
./organize.sh /path/to/your/docs# Extract practices from Git history (last 6 months)
./extract-practices.sh /path/to/your/project
# Custom analysis period and significance
./extract-practices.sh . -m 12 -s 4 --clean
# Outputs AI-friendly practice instructions# Clone the repository
git clone https://github.com/yourusername/docs-organizer.git
cd docs-organizer
# Organize documentation
./organize.sh /path/to/your/markdown/docs
# Extract best practices from Git history
./extract-practices.sh /path/to/your/projectdocs/
βββ index.md # Comprehensive navigation index
βββ README-NAVIGATION.md # Usage guide
βββ by-time/ # Time-based organization
β βββ today/
β βββ yesterday/
β βββ week-prior/
β βββ historical/
βββ by-lifecycle/ # SDLC phase organization
β βββ planning/
β βββ implementation/
β βββ testing/
β βββ debugging/
β βββ completion/
β βββ ...
βββ by-system/ # System function organization
βββ admin-tools/
βββ ui-components/
βββ integration/
βββ ...
practices/
βββ index.md # Master practices index with AI instructions
βββ current-practices.md # Active best practices
βββ deprecated-practices.md # Superseded approaches to avoid
βββ evolution-timeline.md # How practices evolved over time
βββ by-category/ # Domain-specific practices
β βββ architecture/
β βββ development/
β βββ testing/
β βββ deployment/
β βββ ...
βββ by-recency/ # Time-based practice organization
βββ latest/ # Last 2 weeks
βββ recent/ # Last 2 months
βββ established/ # Proven over time
The generated index.md provides:
- π Chronological listings with file timestamps
- π Clickable links to all documentation files
- π Statistics dashboard showing document counts
- ποΈ Multiple view facets for different navigation needs
- β‘ Quick navigation menu with direct folder links
Example index entry:
- [PROJECT-SUCCESS-REPORT.md](../PROJECT-SUCCESS-REPORT.md) *(2025-06-15 08:25:38)*Edit the classification functions in organize.sh:
# Time-based classification
classify_by_time() {
# Custom time bucket logic
}
# SDLC phase classification
classify_by_lifecycle() {
# Custom phase detection
}
# System function classification
classify_by_system() {
# Custom function categorization
}Modify the base structure in create_base_structure():
# Add custom time periods
mkdir -p "$DOCS_ROOT/by-time/custom-period"
# Add custom SDLC phases
mkdir -p "$DOCS_ROOT/by-lifecycle/custom-phase"
# Add custom system categories
mkdir -p "$DOCS_ROOT/by-system/custom-category"# Organize current directory
./organize.sh
# Organize specific directory
./organize.sh /path/to/docs
# Clean existing organization only
./organize.sh --clean# GitHub Actions example
- name: Organize Documentation
run: |
git submodule update --init --recursive
./tools/docs-organizer/organize.sh docs/
git add docs/
git commit -m "Update documentation organization" || exit 0Add to .vscode/tasks.json:
{
"label": "Organize Documentation",
"type": "shell",
"command": "./tools/docs-organizer/organize.sh",
"args": ["docs/"],
"group": "build",
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared"
}
}- Today - Files modified today
- Yesterday - Files modified yesterday
- Week Prior - Files from the past week
- Historical - Older files
- Planning - Architecture, design documents
- Implementation - Development, feature docs
- Testing - Test plans, validation docs
- Debugging - Bug fixes, issue resolution
- Enhancement - UX improvements, optimizations
- Documentation - Guides, README files
- Completion - Success reports, summaries
- Admin Tools - Management, configuration
- UI Components - Frontend, user interface
- Integration - System connections, APIs
- Content Management - Data, content handling
- Diagnostics - Analysis, monitoring
- Success Reports - Achievements, outcomes
- Fork the repository
- Create a feature branch
- Add your enhancements
- Submit a pull request
To add new organizational facets:
- Create classification function
- Add directory structure in
create_base_structure() - Update
organize_documentation()to use new classifier - Enhance
generate_documentation_index()for new sections
MIT License - see LICENSE file for details.
- Designed for markdown-heavy projects
- Optimized for VS Code development environments
- Inspired by knowledge management best practices
Made with β€οΈ for better documentation organization
The best practices extractor generates AI-friendly instructions:
# Current vs Deprecated Practices
- Focus on by-recency/latest/ and current-practices.md
- Avoid patterns listed in deprecated-practices.md
- Reference evolution-timeline.md for context
# Architecture Decisions
- Reference by-category/architecture/ for established patterns
- Consider proven approaches before proposing new ones
# Implementation Guidance
- Start with by-category/development/ for current patterns
- Check deprecated-practices.md to avoid superseded approaches# Update practices based on recent commits
./extract-practices.sh . --clean
# Analyze longer history for more context
./extract-practices.sh . -m 12 -s 3
# Focus on high-significance changes only
./extract-practices.sh . -s 4The system learns from your Git history to provide increasingly accurate guidance about what works and what doesn't in your specific project context.