causeimyourfat  /  cartes  /  genpix ai

On paie l'image,
pas le mois

Toutes les plateformes de génération d'images vendent un abonnement, puis un quota, puis un dépassement. Celle-ci vend une image. Deux essais sans compte ni carte, puis un porte-monnaie qu'on recharge quand on veut.

00

Ce que c'est

30 secondes
Ce que c'estGénération d'images IApaiement à l'image
Pour quiTout le mondedomaine propre, multi-comptes
Échelle12 modulesNode · SQLite · Stripe
Prix0,15 € l'imagesans abonnement, sans limite mensuelle
0,15 €Le prix d'une image. Il n'est écrit nulle part dans la documentation — il vit dans une constante, et un script refuse de publier toute page qui le contredit.
01

Le geste

5 minutes

Une génération, c'est six étapes et un seul endroit où l'argent bouge.

  1. 1 · l'entréeUne phrase, ou vos photosLe point de départ est du texte, ou une image de référence qu'on envoie.
  2. 2 · le débitwallet.jsLe porte-monnaie est débité avant l'appel au fournisseur. C'est le seul fichier de tout le projet autorisé à bouger de l'argent.
  3. 3 · l'envoiprovider/wavespeed.jsLa demande part chez le fournisseur. C'est le seul fichier qui sait qu'il existe — en changer relève d'un remplacement de fichier, pas d'une refonte.
  4. 4 · l'attentele pollOn interroge jusqu'à ce que l'image soit prête. L'utilisateur voit l'état, pas un sablier muet.
  5. 5 · le rangementstorage.jsL'image se pose sur le disque. Elle n'est servie qu'au compte qui l'a payée — la propriété est vérifiée à chaque livraison.
  6. 6 · la traceaudit.jsChaque événement est journalisé. Une contestation de facture se règle avec un journal, pas avec une intuition.
De la phrase à l'image — et où passe l'argent
SAISIEtexte ou photo
WALLETle débit
WAVESPEEDle fournisseur
STORAGEdisque + propriété
LIVRAISONau payeur seul

En cuivre le seul morceau qui ne m'appartient pas. Le débit est avant lui, le stockage après : si le fournisseur change demain, ni le porte-monnaie ni la bibliothèque de l'utilisateur ne bougent.

02

La structure

15 minutes

Un seul caissier

wallet.js. Aucun autre fichier n'a le droit de créditer ou débiter. C'est la règle qui rend l'audit possible.

Un seul fournisseur connu

provider/wavespeed.js. Le reste du code ignore jusqu'au nom du vendeur.

Le prix ne se répète pas

PRICE_CENTS dans src/config.js, et npm run check:price refuse toute page de public/ qui affiche autre chose. Un chiffre recopié est un chiffre qui dérive.

La sécurité au même endroit

security.js : en-têtes, CSP, limitation de débit, CSRF, hachage scrypt, cookies. Pas éparpillée dans les routes.

Base en ajout seul

db.js — SQLite, migrations qui ne reviennent jamais en arrière. La sauvegarde, c'est le dossier data/.

Front sans build

public/ : HTML et modules ES. Ce qu'on écrit est ce qui est servi. Les pages SEO, elles, sont générées depuis seo/keywords.json.

Un abonnement fait payer le mois où l'on n'a rien produit. Le vrai travail du projet n'est pas la génération — c'est que l'argent ne bouge que dans un seul fichier, et que ce fichier soit relisible en dix minutes.

genpix-ai.com · Hostinger

Ce que ça ne fait pas

  • Le fournisseur d'images est un tiers : sa panne est ma panne, même si le porte-monnaie, lui, reste juste.
  • Le paiement passe par Stripe — aucune carte ne transite par le site.
  • Deux images d'essai par visiteur : c'est une porte d'entrée, pas un usage gratuit.
Voir tournerLe service Ouvert — deux images d'essai sans compte ni carte.ouvrir → Les autresToutes les cartes Neuf projets, neuf plans lisibles en cinq minutes. ← revenir