EngiBoard.
Un SaaS desktop pour ingénieurs. Livré en 4 semaines. Capturer, annoter, suivre — un seul binaire.
Zéro recrutement. Public sur GitHub.



- Quoi
- Un tracker desktop natif pour les rapports photo avant/après des ingénieurs, sur Mac et Windows.
- Pourquoi
- Les rapports de chantier passaient par quatre applications bricolées ensemble (pellicule → Telegram → Word), et chaque transmission faisait perdre du contexte.
- Mon rôle
- Produit, UX/UI et ingénierie, en solo avec l’IA : Tauri 2, Next.js, Supabase.
- Résultat
- 44 versions taguées · 4 installeurs · 0 recrutements
Un tracker natif pour les ingénieurs qui produisent des rapports photo avant/après sur les chantiers et dans les ateliers de production.
Lire toute l’histoire
Tauri 2 + Next.js + Supabase. Installeurs macOS et Windows. 44 versions taguées. 98 commits. Zéro recrutement. Public sur GitHub.
Un tracker desktop natif pour les ingénieurs qui produisent des rapports photo avant/après sur les chantiers et dans les ateliers de production. Conçu d’abord pour le fondateur lui-même — puis pour deux vrais clients, sous Windows uniquement, en contrôle qualité de production.
18 écrans. Un seul binaire.
Connexion → projets → capture → annotation → suivi → revue → export. Aucune page de configuration, aucun mode « avancé ».
Les 18 écrans
Chaque écran est pensé pour une seule chose : ce que l’ingénieur est en train de faire. Aucune configuration, aucune page de réglages, aucun mode « avancé ».
- 01 · Connexion
- 02 · Tableau principal
- 03 · Sélecteur de projet
- 04 · Tableau de bord
- 05 · Diaporama + repères
- 06 · Éditeur d’annotations
- 07 · Comparaison par curseur
- 08 · Mode sombre
- 09 · Tableau de bord sombre
- 10 · Sélecteur sombre
- 11 · Connexion sombre
- 12 · Modale hors périmètre
- 13 · État vide
- 14 · Profil
- 15 · Calque de capture
- 16 · Mode collage
- 17 · Menu de statut
- 18 · Sélection multiple
Pellicule → Telegram → Word. Terminé.
Chaque visite de chantier laissait fuir du contexte : photos perdues dans les conversations, annotations loin de la liste des tâches.
Capturer, annoter, joindre.
La vitesse d’une capture native, des tâches à la Linear.
Quatre applications bricolées ensemble.
Chaque transmission fait perdre du contexte.
Un seul binaire.
Épinglez un commentaire sur un pixel — pas sur un horodatage.
Lire toute l’histoire
La chaîne d’outils existante pour chaque visite de chantier était lente et pleine de pertes. Les photos disparaissaient dans les conversations, les annotations vivaient dans une autre application que la liste des tâches, et les rapports perdaient leur contexte dès qu’ils étaient transférés.
- 01 · Tâche — un desktop à usage unique. Capturer, annoter, joindre. La vitesse d’une capture native, la structure de tâches à la Linear, des discussions ancrées dans l’image. Les ingénieurs restent dans une seule application — au lieu d’en assembler quatre.
- 02 · Problème — quatre applications assemblées à coups de captures d’écran et de prières. Pellicule → Telegram → tableur → Word → PDF. Chaque transmission fait perdre du contexte. Les outils d’annotation vivent ailleurs que dans la liste des tâches.
- 03 · Solution — un seul binaire. Capturer, annoter, suivre. Un calque natif Tauri capture n’importe quelle zone. Un éditeur à six outils. Des tâches regroupées par projet, huit statuts codés par couleur. Épinglez un commentaire sur un pixel — pas sur un horodatage.

« Le premier outil qui couvre la vraie boucle que je suis sur le terrain, au lieu de trois demi-outils à assembler moi-même. »
Zone. Annotation. Pièce jointe.
Cmd+Shift+G depuis n’importe où, déclenche un calque transparent. Glissez, annotez, enregistrez dans l’emplacement avant/après.
Capture
Capture de zone native macOS / Windows.

Annoter
Six outils, toujours au premier plan.

Joindre
Retour à la tâche, avant ou après.

Lire toute l’histoire
Cmd+Shift+G depuis n’importe où, déclenche un calque plein écran transparent. Tracez un rectangle. Capture native macOS / Windows. L’éditeur s’ouvre avec le PNG prêt, six outils actifs — flèche, rectangle, crayon, texte, flou, surlignage. L’enregistrement renvoie l’image annotée dans l’emplacement avant/après choisi.
Là où le travail se passe.
Des tâches regroupées par projet, saisies directement — sans modale, sans double-clic, sans détour.

- 01Saisie de tâche intégréeDans chaque groupe, sans détour.
- 02Multi-capturesPlusieurs images par tâche.
- 03Renommer, réordonnerSans quitter le tableau.
Lire toute l’histoire
La barre latérale regroupe les tâches par projet. Saisie de tâche intégrée dans chaque groupe — sans modale, sans double-clic, sans détour. Huit statuts codés par couleur. Plusieurs captures par tâche. Renommez et réordonnez sans quitter le tableau.
Épinglez sur un pixel, pas sur un horodatage.
Les revues vivent sur l’image. Cliquez sur un pixel, posez un repère, écrivez — en fils de discussion, à plusieurs relecteurs.

Les repères pulsent en orange tant qu’ils sont non lusPuis deviennent bleus avec un numéro.

Faites glisser la ligneVoyez la différence — sans bascule.
Lire toute l’histoire
Les revues vivent sur l’image, pas dans un fil séparé. Ouvrez une capture dans la visionneuse — cliquez sur n’importe quel pixel — posez un repère orange — écrivez un commentaire. Plusieurs relecteurs, en fils de discussion. Curseur de comparaison avant/après, à faire glisser pour révéler.
Visionneuse · repères — cliquez sur un pixel, écrivez un commentaire. Les repères pulsent en orange tant qu’ils sont non lus, puis deviennent bleus avec un numéro une fois vus. Le panneau de droite liste chaque commentaire avec auteur, heure et suppression. Plusieurs relecteurs, en fils de discussion complets.
Comparaison par curseur — faites glisser la ligne, voyez la différence. Deux captures superposées, une seule poignée de glissement. Pas de scintillement, pas de bascule, pas de « changer d’onglet » — un pur réflexe. Fonctionne sur toute tâche qui a un avant et un après.
Huit statuts. Deux vues.
Chaque couleur a survécu à dix rejets — aucune n’est de la décoration.


Lire toute l’histoire
Terminé, Problème, En cours, En revue, Infos requises, À venir, Non pertinent, Info — huit statuts, chacun a mérité sa couleur. Le tableau de bord consolide les totaux entre projets ; le menu de statut permet d’en changer un ou plusieurs en un clic.
Tableau de bord — une synthèse, pas un appel nominal. Nombre de projets, répartition des statuts, principaux blocages. Un seul écran répond à la question : où l’équipe est-elle bloquée ? Pas de drill-down avant d’avoir vu tout le terrain.
Menu de statut — un clic pour tout déplacer. Clic droit sur une tâche, changez son statut. Sélectionnez plusieurs lignes, changez-les toutes d’un coup. Huit couleurs qui ont survécu à dix rejets — chacune a un sens, aucune n’est de la décoration.


La même UX, sur toutes les plateformes.
Lire toute l’histoire
Mac série M, Mac Intel, Windows EXE, Windows MSI. Front HTML/CSS/JS partagé, coque native Tauri 2. Le mode sombre s’active par écran, pas pour toute l’application. Les retours des testeurs alimentent le tag de la version suivante.
Thème clair — plein soleil sur un chantier. Surface par défaut. Contraste plus élevé sur les photos, plus confortable sous un éclairage réel. L’aperçu avant impression correspond à ce que vous voyez.
Thème sombre — bureau, soirée, overlay OBS. Pensé pour le tri tard le soir et les démonstrations enregistrées à l’écran. Même contenu, canevas plus profond, les couleurs de statut gardent leur sens dans les deux cas.
Geist pour le produit. Mono pour le système. Bleu ciel, ambre, noir profond.
Geist 400–700 pour l’interface ; Geist Mono pour les horodatages, versions et raccourcis clavier.
L’ambre est réservé à un seul statut — « en cours » — parce qu’il l’a mérité.

Typographie et palette en détail
Typographie. Geist Sans dans toute l’application — une sans-serif moderne et sobre, réglée pour les interfaces produit très denses. Geist Mono pour les moments où le système répond : horodatages, tailles de fichiers, tags de version, indications de raccourcis.
- Geist · 400 / 500 / 600 / 700 — interface principale. Crénage serré, ossature neutre. De la légende (10 px) à l’affichage (96 px).
- Geist Mono · 400 / 500 — horodatages, tags de version, chemins de fichiers, indications de ligne de commande. Partout où le système est précis.
- Instrument Serif · italique — accent éditorial, réservé à l’étude de cas : phrases d’accroche, citations, moments de respiration. Absent de l’application.
Palette. Le bleu ciel porte la marque et les états actifs. L’ambre est réservé à un seul statut — « en cours » — parce qu’il l’a mérité. Le noir profond ancre le canevas ; tout le reste est du blanc système sur fond de bruit.
- Bleu ingénieur #0EA5E9 — marque, états actifs, actions principales, liens.
- Bleu ciel clair #7DD3FC — survol, halo de focus, léger relief sur les dégradés du hero.
- Ambre « en cours » #FFC940 — une seule pastille de statut méritée. Utilisé avec parcimonie — jamais en décoration.
- Noir Studio #0A0A0C — le canevas. On baisse les lumières. Chaque capture d’écran part d’ici.
Sept jours, trente-huit tags.
Chaque tag construit de vrais binaires en CI. Un testeur se plaint le matin, le correctif arrive après le déjeuner.
Jour après jour
Cadence horaire : chaque tag déclenche un pipeline CI qui produit de vrais binaires livrés — Mac série M, Mac Intel, Windows EXE, Windows MSI. Un testeur se plaint le matin, le correctif arrive après le déjeuner.
- Jour 1 · 28 avr. — squelette Tauri. Squelette, pipeline GitHub Actions. La capture native screencapture change de cap avant midi. v0.1.1 → v0.1.9.
- Jour 2 · 29 avr. — calque de capture. Plein écran transparent sur mesure, capture par glissement de zone. Qualité native, maîtrise totale. v0.1.10.
- Jour 3 · 30 avr. — éditeur d’annotations. Six outils — flèche, rectangle, crayon, texte, flou, surlignage. Toujours au premier plan, sans voler le focus. v0.1.11 → v0.1.12.
- Jours 4–5 · 1–2 mai — dogfooding du fondateur. Deux jours de vraies visites de chantier. Des retours précis, pas des impressions vagues. Test terrain.
- Jour 6 · 3 mai — journée sprint. Douze versions en 24 h. Tâches intégrées, multi-captures, export PDF, mode sombre, RU/EN, repères dans la visionneuse. v0.1.13 → v0.1.24.
- Jour 7 · 4 mai — sprint final. Quatorze versions. Sélecteur de projet, conversation intégrée, comparaison par curseur, nouvelle tentative OAuth, clients Windows en service. v0.1.25 → v0.1.44.
- Public — en ligne. Mac DMG · Mac Intel · Win EXE · Win MSI. Tout est public sur GitHub Releases. 44 versions.
Comment il a été fait.
D’un dépôt vide à la v0.1.44 en production. Un fondateur solo + des collaborateurs IA.
- TTauri 2 / RustCoque native, deep-link, plugins
- NNext.js · ReactMiroir web, page d’atterrissage OAuth
- SSupabaseAuth, Google OAuth, base de données
- ★Claude CodePrincipal outil IA de développement
- GGitHub Actions · RailwayCI sur 4 plateformes, déploiement web automatique
Calendrier et stack complète
Six jours et sept heures d’un dépôt vide à la v0.1.44 en production. Un fondateur solo + des collaborateurs IA. Chaque version est publique sur GitHub.
- Jour 1 — squelette Tauri + CI · 28 avr.
- Jour 2 — calque de capture · 29 avr.
- Jour 3 — éditeur d’annotations · 30 avr.
- Jours 4–5 — dogfooding du fondateur · 1–2 mai
- Jour 6 — sprint (12 versions) · 3 mai
- Jour 7 — sprint final (14 versions) · 4 mai
- Tauri 2 / Rust — coque native, deep-link, plugins
- Next.js · React — miroir web, page d’atterrissage OAuth
- Supabase — auth, Google OAuth, base de données
- Claude Code — principal outil IA de développement
- GitHub Actions — CI sur 4 plateformes, à chaque tag
- Railway — déploiement web automatique à chaque push
- Figma — uniquement pour les esquisses d’architecture
- Geist · Mono — système typographique
D’un dépôt vide à v0.1.44 — en 4 semaines.
L’un des sept projets livrés par Stepikin Studio en 2025–26 — conçu pour éprouver la thèse du studio jusqu’à la limite. La thèse a tenu.


















