Files
TimeTracker/docs
Dries Peeters 29f7186ee8 docs: Reorganize documentation structure for better navigation
Complete reorganization of project documentation to improve discoverability,
navigation, and maintainability. All documentation has been restructured into
a clear, role-based hierarchy.

## Major Changes

### New Directory Structure
- Created `docs/api/` for API documentation
- Created `docs/admin/` with subdirectories:
  - `admin/configuration/` - Configuration guides
  - `admin/deployment/` - Deployment guides
  - `admin/security/` - Security documentation
  - `admin/monitoring/` - Monitoring and analytics
- Created `docs/development/` for developer documentation
- Created `docs/guides/` for user-facing guides
- Created `docs/reports/` for analysis reports and summaries
- Created `docs/changelog/` for detailed changelog entries (ready for future use)

### File Organization

#### Moved from Root Directory (40+ files)
- Implementation notes → `docs/implementation-notes/`
- Test reports → `docs/testing/`
- Analysis reports → `docs/reports/`
- User guides → `docs/guides/`

#### Reorganized within docs/
- API documentation → `docs/api/`
- Administrator documentation → `docs/admin/` (with subdirectories)
- Developer documentation → `docs/development/`
- Security documentation → `docs/admin/security/`
- Telemetry documentation → `docs/admin/monitoring/`

### Documentation Updates

#### docs/README.md
- Complete rewrite with improved navigation
- Added visual documentation map
- Organized by role (Users, Administrators, Developers)
- Better categorization and quick links
- Updated all internal links to new structure

#### README.md (root)
- Updated all documentation links to reflect new structure
- Fixed 8 broken links

#### app/templates/main/help.html
- Enhanced "Where can I get additional help?" section
- Added links to new documentation structure
- Added documentation index link
- Added admin documentation link for administrators
- Improved footer with organized documentation links
- Added "Complete Documentation" section with role-based links

### New Index Files
- Created README.md files for all new directories:
  - `docs/api/README.md`
  - `docs/guides/README.md`
  - `docs/reports/README.md`
  - `docs/development/README.md`
  - `docs/admin/README.md`

### Cleanup
- Removed empty `docs/security/` directory (moved to `admin/security/`)
- Removed empty `docs/telemetry/` directory (moved to `admin/monitoring/`)
- Root directory now only contains: README.md, CHANGELOG.md, LICENSE

## Results

**Before:**
- 45+ markdown files cluttering root directory
- Documentation scattered across root and docs/
- Difficult to find relevant documentation
- No clear organization structure

**After:**
- 3 files in root directory (README, CHANGELOG, LICENSE)
- Clear directory structure organized by purpose and audience
- Easy navigation with role-based organization
- All documentation properly categorized
- Improved discoverability

## Benefits

1. Better Organization - Documentation grouped by purpose and audience
2. Easier Navigation - Role-based sections (Users, Admins, Developers)
3. Improved Discoverability - Clear structure with README files in each directory
4. Cleaner Root - Only essential files at project root
5. Maintainability - Easier to add and organize new documentation

## Files Changed

- 40+ files moved from root to appropriate docs/ subdirectories
- 15+ files reorganized within docs/
- 3 major documentation files updated (docs/README.md, README.md, help.html)
- 5 new README index files created
- 2 empty directories removed

All internal links have been updated to reflect the new structure.
2025-12-14 07:56:07 +01:00
..
2025-10-10 11:37:23 +02:00

TimeTracker Documentation

Welcome to the comprehensive TimeTracker documentation. Everything you need to install, configure, use, and contribute to TimeTracker.



🗺️ Documentation Map

docs/
├── 👤 User Documentation
│   ├── Getting Started
│   ├── Feature Guides
│   └── User Guides
│
├── 🔧 Administrator Documentation
│   ├── Configuration
│   ├── Deployment
│   ├── Security
│   └── Monitoring
│
├── 👨‍💻 Developer Documentation
│   ├── Contributing
│   ├── Architecture
│   ├── Development Setup
│   └── Testing
│
└── 📚 Reference
    ├── API Documentation
    ├── Implementation Notes
    └── Reports

👤 User Documentation

Getting Started

User Guides

Feature Documentation

See features/ for additional feature documentation.


🔧 Administrator Documentation

Configuration

Deployment

Security

Monitoring

📖 See admin/README.md for complete administrator documentation


👨‍💻 Developer Documentation

Getting Started

Development Setup

Testing

CI/CD

Technical Documentation

📖 See development/README.md for complete developer documentation


📚 API Documentation

📖 See api/README.md for complete API documentation


🚀 Installation & Deployment

Quick Start

  1. Getting Started Guide — Complete beginner tutorial
  2. Docker Compose Setup — Recommended deployment method
  3. Requirements — System requirements

Database & Migrations


🛠️ Troubleshooting

Common Issues

Quick Fixes

  • Port conflicts: Change PORT=8081 in docker-compose command
  • Database issues: Run docker-compose down -v && docker-compose up -d
  • Permission errors: Check file ownership with chown -R $USER:$USER .
  • Migration failures: See Database Migrations

📝 Additional Resources

Implementation Notes

Recent improvements and changes are documented in implementation-notes/:

  • Layout & UX improvements
  • Feature implementations
  • Bug fixes and improvements
  • Architecture changes

Reports & Analysis

Analysis reports and summaries are available in reports/:

  • Bugfix summaries
  • Audit reports
  • Translation analysis

Feature-Specific Documentation

Detailed feature documentation is available in features/:

  • Feature guides
  • Quick start guides
  • Implementation status

User Guides

Additional user guides are available in user-guides/:

  • Step-by-step guides
  • Tips and tricks
  • Best practices

🔍 Documentation by Role

For New Users

  1. Start with Main README for product overview
  2. Follow Getting Started Guide for installation
  3. Review Requirements to check system compatibility
  4. Explore Feature Documentation to learn features

For Administrators

  1. Follow Docker Compose Setup for deployment
  2. Review Version Management for updates
  3. Set up Email Configuration if needed
  4. Configure OIDC/SSO for authentication
  5. See admin/README.md for complete admin documentation

For Developers

  1. Read Contributing Guidelines before making changes
  2. Review Project Structure to understand codebase
  3. Check Solution Guide for technical patterns
  4. Use Local Testing with SQLite for development
  5. See development/README.md for complete developer documentation

For Troubleshooting

  1. Check Docker Startup Troubleshooting
  2. Review Database Connection Issues
  3. Consult Solution Guide for common problems
  4. Check specific feature documentation if issue is feature-related

📁 Documentation Structure

docs/
├── README.md                          # This file - documentation index
├── GETTING_STARTED.md                 # Beginner tutorial
├── REQUIREMENTS.md                    # System requirements
├── FEATURES_COMPLETE.md               # Complete features list
│
├── guides/                            # User-facing guides
│   ├── DEPLOYMENT_GUIDE.md
│   ├── QUICK_START_GUIDE.md
│   └── ...
│
├── admin/                             # Administrator documentation
│   ├── configuration/                 # Configuration guides
│   ├── deployment/                    # Deployment guides
│   ├── security/                      # Security documentation
│   └── monitoring/                    # Monitoring & analytics
│
├── development/                       # Developer documentation
│   ├── CONTRIBUTING.md
│   ├── CODE_OF_CONDUCT.md
│   ├── PROJECT_STRUCTURE.md
│   └── ...
│
├── api/                               # API documentation
│   ├── REST_API.md
│   ├── API_TOKEN_SCOPES.md
│   └── ...
│
├── features/                          # Feature-specific guides
│   └── ...
│
├── implementation-notes/              # Development notes
│   └── ...
│
├── testing/                           # Testing documentation
│   └── ...
│
├── reports/                           # Reports & analysis
│   └── ...
│
├── user-guides/                       # Additional user guides
│   └── ...
│
└── cicd/                              # CI/CD documentation
    └── ...

🤝 Contributing to Documentation

Found an error? Want to improve the docs?

  1. Check the Contributing Guidelines
  2. Make your changes to the relevant documentation file
  3. Test that all links work correctly
  4. Submit a pull request with a clear description

Good documentation helps everyone! 📚


💡 Tips for Using This Documentation

  • Use the search function in your browser (Ctrl/Cmd + F) to find specific topics
  • Follow links to related documentation for deeper understanding
  • Start with Quick Links at the top if you're in a hurry
  • Browse by role using the role-based sections above
  • Check Implementation Notes for recent changes and improvements

Need help? Open an issue or check the troubleshooting section

Want to contribute? See our Contributing Guidelines


⬆ Back to Top