TreeMap
A free, open-source disk-space visualizer. Squarified treemap, duplicate hunting, disk-full forecasting, and cleanup that only ever moves files to the Trash.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
Flugmappe ist eine Progressive Web App zur Verwaltung von UAV-Einsätzen (Drohnenflüge) mit Vorflugchecklisten, Wetterbewertung, SORA-Risikoklassifizierung und PDF-Berichterstellung. Entwickelt für den realen Einsatzbetrieb deutschsprachiger Drohnenpiloten — alle Daten bleiben lokal im Browser. 1. Einsatzdaten — Standort, Einsatzdetails, Auftrag, Truppstärke und interaktive Einsatzkarte 2. Vorflugkontrolle — Wetterbewertung, Umgebungsprüfung, Fluganmeldungen und SORA-Risikoklassifizierung 3. Flüge — Dokumentation der durchgeführten Flüge 4. Nachbereitung — Einsatzabschluss und PDF-Export查看完整 README ↗
Flugmappe ist eine Progressive Web App zur Verwaltung von UAV-Einsätzen (Drohnenflüge) mit Vorflugchecklisten, Wetterbewertung, SORA-Risikoklassifizierung und PDF-Berichterstellung. Entwickelt für den realen Einsatzbetrieb deutschsprachiger Drohnenpiloten — alle Daten bleiben lokal im Browser.
Jeder Einsatz durchläuft einen strukturierten Workflow:
gut / Vorsicht / Warnung)Automatische Abfrage nahegelegener Infrastruktur über Overpass/OpenStreetMap:
Live-Flugverkehr im Umkreis von 10 km aus Community-ADS-B-Daten (adsb.lol, Fallback adsb.fi):
server/, GET /adsb/point/...). Ist kein Proxy erreichbar (fehlende Konfiguration, „Failed to fetch“ durch CORS/Netzwerk, Route fehlt), zeigt die Sektion „Kein ADS-B-Server verbunden“ statt eines Fehlers, dazu einen Link zur Live-Karte; im Dev-Server leitet Vite direkt an adsb.lol weiterUmfassender Einsatzbericht mit allen erfassten Daten:
| Technologie | Zweck |
|---|---|
| React 19 | UI-Framework |
| TypeScript 5.9 (strict) | Typsicherheit |
| Vite 8 | Build-Tool und Dev-Server |
| Tailwind CSS 4 | Utility-First CSS |
| React Router 7 | Client-Side Routing |
| TanStack Query 5 | Server-State Management und Caching |
| MapLibre GL JS 6 | Karte mit VersaTiles-Basiskarte und eigenen Zeichenwerkzeugen |
| jsPDF | PDF-Generierung |
| React Compiler | Auto-Memoization |
| vite-plugin-pwa | PWA mit Workbox Service Worker |
# Repository klonen
git clone https://github.com/rubenvitt/uav-checklists.git
cd uav-checklists
# Abhängigkeiten installieren
pnpm install
# Dev-Server starten
pnpm dev
# TypeScript-Check + Production-Build
pnpm build
# Linting
pnpm lint
# Production-Build vorab anschauen
pnpm preview
Im Verzeichnis landing/ liegt eine eigenständige, statische
Website, die das Projekt für andere Bereitschaften und Interessierte vorstellt.
Sie ist vollständig vom PWA-Build getrennt (eigenes package.json, eigene
Lockfile, eigener Vite-Build) und lässt sich unabhängig auf einer anderen Domain
ausliefern:
cd landing
pnpm install
pnpm dev # http://localhost:5180
pnpm build # statischer Build nach landing/dist/
Details, Screenshot-Werkzeuge und die vor dem Deployment anzupassenden Stellen
stehen in landing/README.md.
src/
├── components/
│ ├── sections/ # Feature-Abschnitte der einzelnen Phasen
│ │ ├── WeatherSection # Wetterbewertung
│ │ ├── RiskClassSection # SORA-Risikoklassifizierung
│ │ ├── NearbyCheckSection # Umgebungsprüfung (Overpass)
│ │ ├── FlightTrafficSection # Flugverkehr (ADS-B)
│ │ ├── AnmeldungenSection # Fluganmeldungen
│ │ ├── EinsatzdetailsSection # Einsatz-Stammdaten
│ │ ├── EinsatzauftragSection # Einsatzauftrag und Vorlagen
│ │ ├── EinsatzkarteSection # Karte oder Foto
│ │ ├── TruppstaerkeSection # Personalverwaltung
│ │ ├── RahmenangabenSection # Drohne und Flughöhe
│ │ └── ExternalToolsSection # Links zu externen Diensten
│ ├── map/ # MapLibre-Karte mit Zeichenwerkzeugen
│ ├── *Phase.tsx # Phasen-Komponenten (Einsatzdaten, Vorflug, Flüge, Nachbereitung)
│ ├── MissionOverview.tsx # Einsatzübersicht (Start, Liste, Löschen)
│ └── MissionStepper.tsx # Phasen-Navigation
├── hooks/ # Custom Hooks (TanStack Query, localStorage, Geolocation)
├── services/ # API-Clients (Open-Meteo, Bright Sky/DWD, NOAA, Overpass, ADS-B, Nominatim)
├── data/ # Statische Daten (Drohnenspecs, Schwellenwerte)
├── types/ # TypeScript-Typen
├── utils/ # Hilfsfunktionen (Storage, PDF, Bewertung, Formatierung)
└── context/ # React Context (MissionId)
| API | Dienst | Cache-Strategie |
|---|---|---|
| Open-Meteo | Wetter und Vorhersage | TanStack Query 10 min + Service Worker 10 min |
| Bright Sky (DWD) | Stationsmessung + amtliche Warnungen (nur DE) | TanStack Query (Snapshot je Einsatzabschnitt) + Service Worker 10 min |
| NOAA SWPC | Geomagnetischer K-Index | TanStack Query 1 h + Service Worker 1 h |
| Overpass | Nahegelegene Infrastruktur (OSM) | localStorage 8 h |
| adsb.lol / adsb.fi über Backend-Proxy | Live-Flugverkehr (ADS-B, ODbL) | TanStack Query 30 s, Refetch 60 s, Snapshot je Einsatzabschnitt; Service Worker NetworkOnly |
| Nominatim | Reverse Geocoding | TanStack Query |
VersaTiles (tiles.versatiles.org) | Kartenkacheln und Glyphen (OSM-Daten) | Service Worker CacheFirst 30 Tage |
Alle APIs sind öffentlich zugänglich und erfordern keine API-Keys.
Sämtliche Daten werden ausschließlich im Browser gespeichert:
localStorage mit useSyncExternalStore für reaktive Updatesuav-form:{missionId}:{key} in localStoragelocalStorageSiehe LICENSE für Details.