Le point de rupture

J'étais sur Twitter (maintenant X) depuis presque dix ans. C'était utile — un fil organisé des gens que je suivais, par ordre chronologique. Je l'ouvrais dix minutes, je me mettais à jour, je le fermais.

Quelque part en 2024, ça a cessé d'être vrai. L'onglet Pour vous est devenu par défaut. Les posts sponsorisés se sont multipliés. Le piège à engagement est devenu dominant. J'ouvrais X pour voir trois amis et le fermais 40 minutes plus tard sans avoir lu ce pour quoi je venais.

J'ai essayé l'évident — passer à l'onglet Abonnements, masquer des mots, créer des listes. Chacun aidait un peu. Mais l'algorithme Pour vous se réinitialisait, la barre latérale droite continuait de me montrer des tendances qui ne m'intéressaient pas, et les pubs passaient. Pas d'endroit unique pour couper le bruit.

La première version : 200 lignes de JavaScript

J'ai écrit une petite extension Chrome un week-end. Elle faisait trois choses :

  1. Cachait les posts marqués "Promoted"
  2. Cachait la barre latérale droite
  3. Forçait la timeline sur "Abonnements"

C'était tout. ~200 lignes, pas d'interface, juste activable depuis l'icône. J'ai partagé le code avec quelques amis qui vivaient aussi sur X. Ils ont commencé à demander des fonctionnalités.

"Peut-il masquer des comptes sans se désabonner ?" Bien sûr.

"Peut-il filtrer par mot-clé ?" Oui.

"Peut-il résumer les longs fils avec l'IA ?" Hmm. Ça c'est une vraie fonctionnalité.

Du script au produit

La demande de résumé IA a été le moment où ça a cessé d'être un script de hobby. Pour faire de l'IA correctement, il me fallait :

Rien de tout ça n'était dans le plan original "extension de week-end". Mais j'ai pensé : si je dois construire tout ça pour une fonctionnalité, autant le faire bien pour que le reste de l'extension l'utilise aussi — synchroniser les filtres entre appareils, stocker les préférences dans le cloud, etc.

Le projet de hobby est devenu un SaaS complet. Avec le recul : probablement excessif pour la v1. Mais les parties que j'ai gardées (auth, sync, paiements) rendent le produit vraiment meilleur, donc je ne regrette pas.

La stack technique

Pour quiconque veut construire un petit SaaS similaire, voici ce qui a marché :

Coût mensuel total : moins de 10$. L'extension est sur Chrome Web Store (5$ une fois pour le compte développeur).

Ce qui m'a surpris

L'auth est plus difficile qu'il n'y paraît. Email + mot de passe avec vérification, reset, sessions, JWT, limitation au login — c'est une longue checklist. Je ne l'aurais pas fait depuis zéro si j'avais su. Utilise une bibliothèque ou un service si tu peux.

Stripe est plus facile qu'il n'y paraît. Deux endpoints tRPC (checkout + customer portal), un webhook, terminé. Le difficile, c'est faire vérifier ton compte bancaire, pas l'intégration.

La revue Chrome Web Store est imprévisible. Ma première soumission a été rejetée pour une permission inutilisée. La seconde a été approuvée en quelques jours. Chaque mise à jour repasse par la revue — sois prêt à attendre 1 à 7 jours.

La suite

L'extension est en ligne, le site est debout, les paiements fonctionnent de bout en bout. Les ~3 prochains mois, c'est la distribution : posts de blog (tu en lis un), lancement Product Hunt, Reddit, IndieHackers.

Si ton fil X / Twitter t'embête, j'aimerais que tu l'essaies. Le plan gratuit couvre ce dont la plupart ont besoin. Et si tu as des retours, mon email est dans le pied de page — je lis tout.