|
| 1 | +# Reitti Documentation |
| 2 | + |
| 3 | +[](https://github.com/dedicatedcode/reitti-documentation/actions/workflows/build-deploy.yml) |
| 4 | + |
| 5 | +This repository contains the documentation for [Reitti](https://www.dedicatedcode.com/projects/reitti/), a personal location tracking and analysis application. |
| 6 | + |
| 7 | +You can find the online version of the Reitti documentation at <https://www.dedicatedcode.com/projects/reitti/latest/> |
| 8 | + |
| 9 | +## Contents |
| 10 | +- [Building Locally](#building-locally) |
| 11 | +- [Versioning](#versioning) |
| 12 | +- [Contribution Guidelines](#contribution-guidelines) |
| 13 | +- [Deployment](#deployment) |
| 14 | +- [Project Structure](#project-structure) |
| 15 | +- [Technology Stack](#technology-stack) |
| 16 | +- [About Reitti](#about-reitti) |
| 17 | +- [Getting Help](#getting-help) |
| 18 | +- [License](#license) |
| 19 | + |
| 20 | +## Building Locally |
| 21 | + |
| 22 | +This project uses (https://docs.astral.sh/uv/) for dependency management. To build the documentation locally: |
| 23 | + |
| 24 | +```bash |
| 25 | +# Install dependencies |
| 26 | +uv sync |
| 27 | + |
| 28 | +# Build the documentation |
| 29 | +uv run mkdocs build |
| 30 | + |
| 31 | +# Serve locally for preview |
| 32 | +uv run mkdocs serve |
| 33 | +``` |
| 34 | + |
| 35 | +The site will be available at `http://localhost:8000`. |
| 36 | + |
| 37 | +## Versioning |
| 38 | + |
| 39 | +This documentation uses (https://github.com/jimporter/mike) for versioning with [MkDocs](https://www.mkdocs.org/). The documentation is organized by branches: |
| 40 | + |
| 41 | +- **`main`** - Contains the latest documentation, deployed as the current major version (4.0) with the `latest` alias |
| 42 | +- **`v3`** - Contains the stable 3.x documentation |
| 43 | + |
| 44 | +When viewing the documentation, you can switch between versions using the version selector in the header. |
| 45 | + |
| 46 | +## Contribution Guidelines |
| 47 | + |
| 48 | +If you are submitting documentation for the **current stable release**, submit it to the corresponding branch. For example, documentation for version 3.x would be submitted to the `v3` branch. Documentation intended for the next release should be submitted to the `main` |
| 49 | +branch. |
| 50 | + |
| 51 | +Every documentation page includes an "edit this page on github" link at the bottom for easy contributions. |
| 52 | + |
| 53 | +## Deployment |
| 54 | + |
| 55 | +Documentation is automatically built and deployed via GitHub Actions when changes are pushed to `main` or version branches (e.g., `v3`). The deployment process: |
| 56 | + |
| 57 | +1. Builds the documentation using MkDocs |
| 58 | +2. Deploys versioned documentation using mike |
| 59 | +3. Syncs the built documentation to the server |
| 60 | +4. Invalidates the CDN cache |
| 61 | + |
| 62 | +See [`.github/workflows/build-deploy.yml`](.github/workflows/build-deploy.yml) for the complete build and deployment configuration. |
| 63 | + |
| 64 | +## Project Structure |
| 65 | + |
| 66 | +``` |
| 67 | +reitti-documentation/ |
| 68 | +├── docs/ # Documentation source files |
| 69 | +│ ├── about/ # About Reitti |
| 70 | +│ ├── api/ # API documentation |
| 71 | +│ ├── configurations/ # Configuration guides |
| 72 | +│ ├── integrations/ # Integration guides |
| 73 | +│ ├── memories/ # Memories feature |
| 74 | +│ ├── usage/ # Usage guides |
| 75 | +│ └── assets/ # CSS, JS, images |
| 76 | +├── theme/ # Custom MkDocs theme overrides |
| 77 | +├── mkdocs.yml # MkDocs configuration |
| 78 | +├── pyproject.toml # Python dependencies |
| 79 | +└── .github/workflows/ # CI/CD pipelines |
| 80 | +``` |
| 81 | + |
| 82 | +## Technology Stack |
| 83 | + |
| 84 | +- **Documentation Generator:** [MkDocs](https://www.mkdocs.org/) |
| 85 | +- **Theme:** (https://github.com/squidfunk/mkdocs-shadcn) with custom overrides |
| 86 | +- **Versioning:** (https://github.com/jimporter/mike) |
| 87 | +- **Plugins:** |
| 88 | + - `mkdocs-nav-weight` - Custom navigation ordering |
| 89 | + - `badges` - Badge support |
| 90 | + - `search` - Built-in search |
| 91 | + - `redirects` - URL redirection |
| 92 | +- **Package Manager:** (https://docs.astral.sh/uv/) |
| 93 | +- **CI/CD:** GitHub Actions |
| 94 | +- **Deployment:** rsync to server + Cloudflare CDN cache invalidation |
| 95 | +- **Python:** ≥ 3.12 |
| 96 | + |
| 97 | +## About Reitti |
| 98 | + |
| 99 | +Reitti (Finnish for "route" or "path") is a comprehensive personal location tracking and analysis application. It helps you: |
| 100 | + |
| 101 | +- Track your daily movements and locations |
| 102 | +- Analyze travel patterns and statistics |
| 103 | +- Create memories from your visits |
| 104 | +- Integrate with various location sources (mobile apps, OwnTracks, Home Assistant, etc.) |
| 105 | +- Maintain privacy-focused self-hosted deployment |
| 106 | + |
| 107 | +The application is designed to be self-hosted, giving you full control over your location data. |
| 108 | + |
| 109 | +## Getting Help |
| 110 | + |
| 111 | +- **Documentation:** [Online Documentation](https://www.dedicatedcode.com/projects/reitti/latest/) |
| 112 | +- **Issues:** [GitHub Issues](https://github.com/dedicatedcode/reitti-documentation/issues) |
| 113 | +- **Source Code:** [Reitti Application](https://github.com/dedicatedcode/reitti) |
| 114 | + |
| 115 | +## License |
| 116 | + |
| 117 | +See the [LICENSE](LICENSE) file for details. This project uses the CC0 1.0 Universal license. |
0 commit comments