Aller au contenu

Applications métier codées avec l’IA, faites pour durer.

BreizhVibe : un ensemble d'outils et méthodes pour le codage assisté par les grands acteurs de marché LLM
découvrez mon skill wavedevsimpl, adapté à la réalisation de prototypes d'applications sécurisées.

Voir les réalisationsÉtude de cas : Youl VatLire le skill

0
framework, Composer, npm ou étape de build
1
dossier à déposer par FTP. Changer d’hébergeur, c’est le copier
1
fichier SQLite contient toute la base de données

Ce qu’on a déjà construit

Des outils réels, codés avec Claude, chacun avec la stack qui lui convient.

Youl Vat

En ligne

« Bonne volonté » en breton.

Le planning des bénévoles d’un événement festif, né pour le Fest-noz Vras Kalanna à Quimper. Le public consulte, les bénévoles s’inscrivent sur un créneau libre, les organisateurs pilotent tout le jour J.

  • Planning public, lisible sur téléphone
  • Inscription sans compte, créneau complet refusé
  • Alerte de chevauchement, charge équilibrée
  • Pointage le jour J, export CSV et JSON
  • Trilingue : brezhoneg, français, English

PHP 8, SQLite, wavedevsimpl

Voir sur GitHubLire l’étude de cas

Youl Vat

Stokekstra

Prototype

La gestion de stock dans la poche.

Une appli mobile pour suivre un stock réparti sur plusieurs sites, entrepôts et boutiques. Tout tient dans une seule grille : les produits en lignes, les lieux en colonnes, les quantités au croisement.

  • Grille produits × lieux, avec totaux
  • Transfert d’un site à l’autre d’un toucher, ou par glisser-déposer
  • Fonctionne hors ligne, données sur le téléphone
  • Import et export de fichier
  • Données de démo et remise à zéro

React Native, Expo, Zustand, MMKV

Voir sur GitHubLire l’article

Stokekstra

WaveSupaCrud

Open source

L’admin qui manquait à Supabase.

Une interface d’administration pour les bases Supabase, y compris en offre gratuite : parcourir, filtrer et modifier ses tables, et sauvegarder ses données. Indispensable quand on code avec l’IA.

  • Tables, filtres et pagination
  • Thème « verre », clair et sombre
  • Sauvegarde depuis le menu
  • JavaScript natif, aucun framework à l’exécution
  • CSS Tailwind compilé une fois, rien à builder en production

JavaScript, Tailwind, Supabase

Voir sur GitHubLire l’article

WaveSupaCrud

SkridCMS

En chantier

« Skrid » veut dire écrit en breton.

Un éditeur de site tout simple : écrivez et mettez à jour vous-même les pages d’un petit site, hébergé comme le reste. Un dossier, n’importe quel hébergement PHP.

PHP 8, sans base de données, wavedevsimpl

Lire l’étude de cas (en anglais)

Skrid en train de modifier une page de wave.bzh : chaque texte modifiable entouré, la barre Skrid en bas.

Étude de cas : Youl Vat pour le Fest-noz Vras Kalanna

Kalanna, c’est le grand fest-noz du réveillon à Quimper : une nuit au Pavillon du Parc des Expositions, de la danse de 20 h à 4 h, un bar et des crêpes toute la nuit. Il repose sur ses bénévoles, et Youl Vat a été écrit pour les placer.

5
jours à couvrir, de l’installation le 29 décembre au rangement le 2 janvier
24
postes : bar, crêpes, entrée, installation…
56
créneaux dans le premier planning, dont plusieurs après minuit
3
langues : brezhoneg, français, English

Le planning des bénévoles vivait dans un Google Sheet. Youl Vat le remplace par une seule adresse, youlvat.kalanna.bzh : tout le monde consulte le planning sur son téléphone, les bénévoles s’inscrivent sur un créneau libre sans créer de compte, et les organisateurs pilotent tout l’événement depuis les mêmes écrans, jusqu’au pointage le soir même.

L’outil est né d’un prototype construit en conversation avec Claude. L’équipe a aimé l’interface, elle est restée ; seule la couche de données a changé, portée en PHP et SQLite pour tourner sur n’importe quel hébergement mutualisé et déménager en copiant un dossier. Le code est ouvert sur GitHub.

Le parcours des données

  1. Dans le navigateur

    • Planning, index.php : public, recharge tout l’événement toutes les 15 secondes.
    • Inscription, inscription.php : prénom, nom, téléphone et e-mail, sans compte.
    • Organisateurs : un mot de passe partagé, et chaque écran devient modifiable.
  2. Une seule porte : api.php

    • GET action=all : tout l’événement en une seule réponse JSON.
    • POST signup : public, avec jeton CSRF, champ piège caché et 20 inscriptions par heure et par appareil.
    • POST create · update · delete : organisateurs seulement, sur une liste blanche de tables et de colonnes.
    • Pour le public, une bénévole s’appelle « Marie D. », téléphone et e-mail masqués : le détail ne quitte jamais le serveur.
  3. Un seul fichier : SQLite

    • data/regie.sqlite, fermé au web.
    • événements → postes → créneaux → affectations ← bénévoles, suppressions en cascade.
    • Journal WAL, attente de 5 secondes, verrou d’écriture pris d’abord.
    • export.php : CSV pour le tableur, JSON complet pour sauvegarder ou changer d’hébergeur.

Deux bénévoles, une dernière place

Deux personnes cliquent sur « S’inscrire » pour la dernière place au même instant. La première requête prend le verrou d’écriture et n’insère que s’il reste de la place ; la seconde attend une ou deux millisecondes, trouve le créneau complet et reçoit une réponse claire au lieu d’une double inscription. La règle est écrite dans le SQL lui-même : aucun chemin du code PHP ne peut la contourner.

Pensé pour une nuit de fest-noz

  • Un créneau qui commence avant 6 h appartient à la nuit de la veille : 00:00–05:00 le 31 décembre, c’est la nuit du réveillon.
  • Chevauchements signalés, candidats triés par heures déjà planifiées pour répartir la charge.
  • Pointage le soir même : prévu, présent ou absent.
  • Les responsables de poste s’inscrivent sur leur propre page.
  • Un lien permanent pour chaque créneau, poste et bénévole, à envoyer par SMS.

Le code sur GitHubSchéma et écritures simultanéesLe planning KalannaFest-noz Vras Kalanna

Du vibe coding, avec des garde-fous

Le vibe coding va vite, mais livrée à elle-même, une IA sort volontiers des frameworks, des services cloud et des chaînes de build qui cassent au bout de trois ans. Pour les outils web, le skill wavedevsimpl est l’ensemble d’instructions que Claude suit à chaque projet : chaque appli sort avec la même forme, simple et durable.

  1. 1

    Décrire le besoin

    Le planning des bénévoles d’un festival, une liste de stock, un site à modifier. Des mots simples, les vraies contraintes, ce qui est public et ce qui est réservé aux admins.

  2. 2

    Claude le construit

    Avec le skill wavedevsimpl chargé : même arborescence, mêmes bibliothèques, mêmes règles de sécurité, et les décisions notées dans le CLAUDE.md du projet.

  3. 3

    Tester sur une copie

    Jamais sur la vraie base. Pages publiques vérifiées à 375 px de large, export fonctionnel avant la mise en ligne.

  4. 4

    Déposer un dossier

    Par FTP, sur n’importe quel hébergement PHP mutualisé. La base se crée toute seule au premier lancement. Rien à installer.

PHP 8 + SQLite + HTML, CSS et JS natifs

Volontairement sans surprise. PHP tourne chez tous les hébergeurs, SQLite fait de la base un simple fichier, et sans dépendance il n’y a rien à mettre à jour.

PHP d’abord, JavaScript ensuite
Les pages sont générées par PHP ; JavaScript n’est qu’un petit complément pour filtrer, confirmer ou éditer du texte riche. Un seul langage à lire : la personne qui maintient l’outil ouvre un fichier et le comprend.
L’hébergement le moins cher
N’importe quel mutualisé PHP. Rien à installer côté serveur.
Changer d’hébergeur sans douleur
La base est un fichier. Migrer, c’est copier le dossier.
Maintenable des années
Pas de npm install, pas de build qui casse. À la portée des non-spécialistes.
Aucun service externe
Pas de quotas Firebase ou Supabase, d’offres gratuites mises en pause ni de conditions qui changent.

Les règles de chaque appli

  • SQLite en mode WAL, clés étrangères activées, délai d’attente réglé à chaque connexion.
  • Schéma sans installation : créé au premier lancement, migré automatiquement quand il évolue.
  • Les règles métier sensibles à la concurrence sont écrites en SQL, pas en PHP.
  • Une seule API JSON avec liste blanche des tables et colonnes ; champs privés retirés pour les visiteurs.
  • Mot de passe admin partagé, jeton CSRF sur chaque POST, tout est échappé.
  • Mobile d’abord, chemins relatifs partout, export CSV/JSON avant la mise en ligne.

Quand ce n’est pas le bon outil

BreizhVibe le dit franchement et propose autre chose quand un projet demande :

  • plusieurs serveurs derrière un répartiteur de charge
  • des dizaines d’écritures simultanées par seconde
  • de vrais comptes individuels avec des rôles fins
  • une interface collaborative en temps réel

Aller plus loin

Le skill wavedevsimplTuto : optimiser ses imagesTout le code sur GitHub

Un outil pour votre association ou votre entreprise ?

Décrivez-le avec des mots simples : qui l’utilise, ce qu’il faut pouvoir faire, ce qui doit rester privé. Je vous dirai si BreizhVibe est la bonne solution.

M’écrire sur LinkedIn