anydrop/docs/roadmap.md
ordinarthur 9d6e4da4ae
Some checks failed
Build & Deploy / build-and-deploy (push) Failing after 8s
feat: initial commit with full deployment setup
Includes React PWA frontend, WebSocket signaling server, shared types,
K8s manifests, Gitea CI/CD workflow, nginx config, and Dockerfiles.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-14 10:30:45 +02:00

96 lines
3.0 KiB
Markdown

# Roadmap AnyDrop
## Phase 1 — Web PWA (V1, en cours)
**Objectif :** Produit utilisable depuis n'importe quel navigateur moderne, sur `anydrop.arthurbarre.fr`.
### Features
- [ ] Détection auto des pairs sur le même réseau (room LAN par IP publique)
- [ ] Envoi de fichiers (drag & drop, sélecteur)
- [ ] Envoi de plusieurs fichiers en une fois
- [ ] Envoi de texte / liens (modal)
- [ ] Aperçu image avant envoi
- [ ] Popup accepter/refuser côté récepteur
- [ ] Barre de progression par transfert
- [ ] Nom d'appareil animal auto-généré (pas de compte)
- [ ] Mode lien public `/xxx` avec code à 3 caractères
- [ ] Génération QR code pour lien public
- [ ] Expiration des rooms publiques (10 min d'inactivité)
- [ ] PWA (manifest + service worker, installable)
- [ ] Responsive mobile + desktop
- [ ] Dark mode
### Stack
React + Vite + TS + Tailwind + Zustand + simple-peer + qrcode.react
Node + ws + TypeScript
### Livrable
Site fonctionnel déployé sur `anydrop.arthurbarre.fr` + signaling sur `ws.anydrop.arthurbarre.fr`.
---
## Phase 2 — Extensions navigateur
**Objectif :** Partage en 1 clic depuis n'importe quelle page.
- Extension Chrome (Manifest V3)
- Extension Firefox (WebExtensions)
- Menu contextuel : "Envoyer via AnyDrop" sur page, image, lien, texte sélectionné
- Popup réutilisant la liste des pairs
- Réutilisation maximale du code `web/`
---
## Phase 3 — Apps desktop (Tauri)
**Objectif :** Intégration OS native sans payer le prix d'Electron.
- Tauri (Rust + webview système)
- Targets : macOS (Intel + Apple Silicon), Windows 10+, Linux (AppImage + .deb)
- Features natives :
- Menu "Envoyer à AnyDrop" via Share Sheet (macOS) / Context Menu (Windows)
- Tray icon avec liste des pairs
- Dossier de réception configurable
- Notifications natives
- Démarrage auto (optionnel)
---
## Phase 4 — Apps mobiles
**Objectif :** Expérience native, intégrée au Share Sheet système.
- React Native (choix préféré pour réutiliser l'écosystème JS) ou Flutter
- iOS : Share Extension (partager depuis Photos, Safari, etc.)
- Android : Share Intent (partager depuis n'importe quelle app)
- Scan QR code intégré (caméra)
- Historique local (chiffré)
### Note Windows Phone
Windows Phone a été arrêté par Microsoft en 2019. Les rares appareils existants utiliseront la **version web** via Edge mobile.
---
## Phase 5 — Fonctionnalités avancées
- Transfert de dossiers entiers (zip streaming)
- Chiffrement applicatif additionnel (SafetyNumber vérifiable)
- Reprise de transfert après coupure
- Historique chiffré local des transferts
- Favoris d'appareils (trust on first use)
- Multi-pair simultané (envoyer à plusieurs pairs en parallèle)
- Statistiques agrégées anonymes (opt-in)
---
## Hors-scope (pour l'instant)
- Comptes utilisateurs
- Stockage cloud des fichiers
- Messagerie persistante
- Collaboration temps réel sur documents
- Monétisation
Ces choix sont volontaires : AnyDrop doit rester **simple, rapide, privé**.