Documentation
Tout ce qu'il faut pour créer, faire évoluer et gérer une app StreakApps. Besoin d'un exemple complet ? Va voir les cas d'usage.
Créer une app
Sur le portail, clique « Créer mon app », choisis un nom disponible : ton app vivra sur ton-nom.streakapps.com. « Réclamer » (enrôler) une app la lie à ton identité — tu en deviens propriétaire.
- Choisis un nom (minuscules, chiffres, tirets).
- Identifie-toi (wallet ou email) — tu reçois un bonus de bienvenue.
- Tu arrives sur ton app, prêt à parler à gl1tch.
Connexion
Deux façons de t'identifier :
- Wallet (MetaMask) — un porte-clés dans ton navigateur. Aucun mot de passe : tu signes pour prouver que c'est toi. Guide MetaMask →
- Email — email + mot de passe classiques. Un wallet « custodial » est créé et géré pour toi automatiquement.
Le propriétaire d'une app est le wallet qui l'a réclamée. Une même connexion vaut pour toutes tes apps.
Parler à gl1tch
gl1tch est l'agent IA qui fabrique ton app. Ouvre le widget de chat (en bas à droite de ton app, visible par le propriétaire) et décris ce que tu veux — en français, simplement.
- Il écrit le code (HTML/CSS/JS) et le met en ligne en direct.
- Tu ajustes en continuant la conversation (« mets le titre en vert », « ajoute un bouton »).
- Chaque tour est versionné : depuis
/admin, tu vois l'historique et tu peux restaurer une version antérieure en un clic.
Données
Chaque app a deux tiers de données, sans rien à installer. gl1tch écrit les requêtes pour toi ; voici ce qui se passe sous le capot.
Base privée (par visiteur)
Une base SQLite par utilisateur : chacun garde ses propres données (préférences, brouillons, suivi perso). Personne ne voit la base d'un autre.
await fetch('/_app/db/exec', {
method: 'POST',
body: JSON.stringify({
sql: 'INSERT INTO notes(txt) VALUES (?)',
params: ['ma note privée']
})
});
Base partagée (collective)
Une base commune à tous les visiteurs de l'app : forum, votes, catalogue, classement. L'identité de l'auteur est fournie par le serveur (impossible à usurper).
await fetch('/_app/adb/exec', {
method: 'POST',
body: JSON.stringify({
sql: "INSERT INTO messages(author, txt) VALUES (current_setting('app.wallet'), $1)",
params: ['bonjour à tous']
})
});
? en privé, $1 en partagé) — jamais de concaténation d'entrée utilisateur (injection SQL).Secrets & API tierces
Pour appeler une API tierce avec une clé sans jamais l'exposer au navigateur :
- Range ta clé dans le coffre à secrets (
/admin→ Secrets), par ex.OPENWEATHER_KEY. - Dans l'app, appelle l'API via le proxy serveur avec un placeholder
{{secret:NOM}}:
await fetch('/_app/proxy', {
method: 'POST',
body: JSON.stringify({
url: 'https://api.exemple.com/v1/data',
headers: { Authorization: 'Bearer {{secret:OPENWEATHER_KEY}}' }
})
});
Le serveur remplace le placeholder par la vraie valeur et exécute l'appel : la clé n'atteint jamais le client. Un secret peut être partagé entre toutes tes apps.
Fichiers
Uploade des fichiers (images, CSV, JSON, PDF, polices — pas d'exécutables) depuis /admin → Fichiers. Ils atterrissent sous uploads/ et gl1tch les utilise dans ton app : <img src="uploads/logo.png">, lecture d'un uploads/data.csv, etc.
Domaines custom
Sers ton app sur ton propre domaine (app.tonsite.com) en plus de ton-app.streakapps.com :
/admin→ Domaines custom → ajoute ton domaine.- Chez ton registrar, pointe le DNS : sous-domaine →
CNAMEverston-app.streakapps.com; domaine racine → enregistrementAvers l'IP indiquée. - Clique « Vérifier » — le certificat HTTPS est émis automatiquement, ton app est servie sur ton domaine.
La gestion (admin, gl1tch) reste sur ton-app.streakapps.com.
Console admin
Sur ton-app.streakapps.com/admin :
- Consommation & coûts — trafic, latence, erreurs, ressources et coût facturé par jour.
- Historique — versions de l'app, restauration en un clic.
- Secrets, Fichiers, Domaines custom, choix du modèle IA.
- Bascule entre toutes les apps que tu possèdes.
Solde & recharge
L'usage (IA gl1tch + ressources) est facturé à ton solde en USD, mutualisé entre tes apps.
- Un bonus de bienvenue t'est offert à la première connexion.
- Recharge via « Top up » dans le widget : envoi d'USDC on-chain (Arbitrum).
- Tu paies au token pour l'IA et à l'usage pour les ressources — détail dans
/admin.
Obtenir de l'aide
Clique le bouton « 💬 Aide » présent sur le site : un assistant répond à tes questions sur l'utilisation de StreakApps (création, wallet, données, domaines, tarifs…). Pour construire ou modifier ton app, c'est gl1tch, dans le widget de ton app.