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

3.0 KiB

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é.