commit 38f40a9499c197fb3626cf78b86a495884bae239 Author: Eddy de Vink Date: Fri May 29 18:46:42 2026 +0200 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8182bc4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,112 @@ +.yolo.json +credentials.json +verzendlijst.md + +# Dependencies +node_modules/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Build output +dist/ +build/ + +# Environment variables +.env +.env.local +.env.development.local +.env.test.local +.env.production.local + +# Logs +logs/ +*.log + +# Runtime data +pids/ +*.pid +*.seed +*.pid.lock + +# Coverage directory used by tools like istanbul +coverage/ +*.lcov + +# nyc test coverage +.nyc_output + +# Dependency directories +jspm_packages/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env.test + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# next.js build output +.next + +# nuxt.js build output +.nuxt + +# vuepress build output +.vuepress/dist + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# IDE files +.vscode/ +.idea/ +*.swp +*.swo +*~ + +# OS generated files +.DS_Store +.DS_Store? +._* +.Spotlight-V100 +.Trashes +ehthumbs.db +Thumbs.db + +# Test files +test/fixtures/ +test/sample-pdfs/ +test/output/ + +# Temporary files +temp/ +tmp/ +*.tmp% diff --git a/docs/superpowers/specs/2026-05-29-dashcam-transfer-design.md b/docs/superpowers/specs/2026-05-29-dashcam-transfer-design.md new file mode 100644 index 0000000..7374081 --- /dev/null +++ b/docs/superpowers/specs/2026-05-29-dashcam-transfer-design.md @@ -0,0 +1,58 @@ +# Dashcam Transfer — Ontwerp + +## Huidige situatie (29 mei 2026) + +### Hardware +- **Remote server**: Fedora Linux (`nextcloud`) +- **SSD (USB)**: 4TB, automatisch gemount op `/mnt/ultratouch` via systemd automount (transient) + - Bestandssysteem: exfat + - 602 GB vrij (84% vol) + - Device: `/dev/sdc2` +- **SD-kaart (USB reader)**: Automatisch gemount op `/mnt/sdcard` via systemd automount (transient) + - Momenteel **niet ingeplugd** — automount faalt met "Dependency failed" + - SD-kaart moet nog worden geïnspecteerd op mappenstructuur + +### Bestaande mappenstructuur op SSD +``` +/mnt/ultratouch/dashcam/ +├── 20250808/ +│ ├── chauffeur/ +│ └── weg/ +├── 20250811/ +│ ├── chauffeur/ +│ └── weg/ +├── ... +├── 20260328/ +│ ├── front/ +│ └── rear/ +├── ... +└── 20260425/ + ├── front/ + └── rear/ +``` + +- **2025**: `chauffeur/` en `weg/` (vouwfiets dashcam?) +- **2026**: `front/` en `rear/` (auto dashcam met voor- en achtercamera) + +### Bestandseigenschappen +- Formaat: `.MP4` +- Grootte: ~381 MB per bestand +- Naamgevingsformaat: `YYYYMMDDHHMMSS_XXXXXXXXX.MP4` (bv. `20260425060958_0000001F.MP4`) +- Opname-interval: ~5 minuten per clip + +### Transfer eisen (nog te verfijnen) +- **Detectie**: Automatisch bij inpluggen SD-kaart +- **Modus**: Verplaatsen (move, niet copy) +- **Organisatie**: `YYYYMMDD/front/` en `YYYYMMDD/rear/` op SSD +- **Filter**: Alleen `.mp4` bestanden +- **Opschonen**: Alleen overgezette bestanden verwijderen van SD-kaart + +### Automount configuratie +- Beide mount points via systemd transient units (geen statische unit-bestanden) +- Aanmaak via `systemd-mount` of udev-regels + +## Volgende stappen +1. SD-kaart inspecteren op mappenstructuur na inpluggen +2. Transfer-script schrijven (bash of Python) +3. Service/trigger configureren (udev, systemd path unit, of systemd service) +4. Testen met echte data