🎁 Mini-SaaS V1 · API Supabase si disponible · fallback localStorage

Envoie une page cadeau, pas un simple PDF.

Un créateur prépare un message, les métadonnées du bon/PDF et une date de révélation. Le destinataire reçoit un lien, déballe le paquet, puis l’ouverture est enregistrée localement ou via l’Edge Function Supabase.

Contrat API attendu

La page tente /functions/v1/deballe-api ou window.DEBALLE_CONFIG.apiBaseUrl. Sans API, elle stocke les cadeaux dans localStorage pour une démo navigateur.

Atelier créateur + aperçu destinatairedétection…
Aucun PDF choisi. Le lien partagé gardera seulement les métadonnées, pas le fichier local.
Un fichier choisi ici reste dans cette session via URL.createObjectURL. Il n’est pas envoyé à l’API.
🎀
Anniversaire

Pour Micka

J’ai préparé un bon cadeau rien que pour toi.

Le vrai bon peut être joint par PDF, code ou lien sécurisé dans une V2 connectée.

De la part de Camille

Ouvrir le PDF local

1. Création

Le créateur saisit destinataire, message, référence de bon/PDF, note et date de révélation. Un code court est généré.

2. Partage

Si Supabase répond, le code est persistant. Sinon, le lien fonctionne en fallback sur le même navigateur via localStorage.

3. Ouverture

Le destinataire déballe, la révélation est enregistrée avec timestamp et mode de stockage, puis l’accès au bon est présenté.

Notes produit / limites V1

Pas de paiement ni stockage de PDF dans cette V1 statique. Les secrets restent côté serveur. Le frontend peut utiliser une URL Supabase publique et une clé publishable injectées par configuration, jamais une service role key.
Que fait l’API si elle existe ?

La page appelle un endpoint REST Edge Function pour créer un cadeau, récupérer un cadeau par code et enregistrer une ouverture. Si l’appel échoue ou si l’API n’est pas configurée, elle bascule automatiquement en local.

Le PDF est-il partagé ?

Non. Le champ fichier sert uniquement à tester l’expérience localement. En SaaS complet, le PDF devrait être stocké dans Supabase Storage avec politiques RLS, URL signée et analyse de taille/type.

Pourquoi une date de révélation ?

Elle permet le cas d’usage “n’ouvre pas avant Noël / anniversaire”. Le verrouillage est appliqué côté UI et devrait être renforcé côté Edge Function en production.

Signal V1 recherché : création de liens cadeaux réels, taux d’ouverture, demandes de stockage PDF et personnalisation premium avant monétisation.