<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>TrainUs</title><link>https://kaivalya.eu/projects/trainUs/</link><description>Recent content on TrainUs</description><generator>Hugo -- gohugo.io</generator><language>fr</language><lastBuildDate>Tue, 21 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://kaivalya.eu/projects/trainUs/index.xml" rel="self" type="application/rss+xml"/><item><title>Démarrage rapide</title><link>https://kaivalya.eu/projects/trainUs/developers/demarrage-rapide/</link><pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/developers/demarrage-rapide/</guid><description>Ce dont vous aurez besoin Node.js ≥ 18 Python ≥ 3.10 (uniquement pour lancer la suite de tests) Un navigateur récent — Firefox 111+, Chrome 102+, ou Safari 16.4+. TrainUs s&amp;rsquo;appuie sur OPFS (Origin Private File System) pour sa base de données, qui n&amp;rsquo;existe pas dans les navigateurs anciens ni dans les fenêtres de navigation privée. Cloner et installer git clone &amp;lt;repo-url&amp;gt; cd trainUs npm install Lancer l&amp;rsquo;application npm run dev Cela démarre le serveur de développement Vite sur http://localhost:5173.</description></item><item><title>Démarrage rapide</title><link>https://kaivalya.eu/projects/trainUs/docs/demarrage-rapide/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/docs/demarrage-rapide/</guid><description>Qu&amp;rsquo;est-ce que TrainUs ? TrainUs est une application de suivi d&amp;rsquo;entraînement physique. Vous y créez des exercices, vous les regroupez en combos (des enchaînements façon crossfit, avec ou sans minuterie), puis en séances. Vos séances peuvent à leur tour être rangées dans des collections — un programme sur plusieurs semaines, par exemple.
Quand vient le moment de s&amp;rsquo;entraîner, vous lancez une séance en mode exécution : l&amp;rsquo;application vous guide pas à pas, avec un chronomètre pour les combos minutés, et garde une trace de tout ce que vous avez réellement fait (répétitions, poids, durée) pour pouvoir suivre votre progression dans les statistiques.</description></item><item><title>Guides pratiques</title><link>https://kaivalya.eu/projects/trainUs/developers/guides-pratiques/</link><pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/developers/guides-pratiques/</guid><description>Ajouter une nouvelle langue TrainUs propose déjà trois langues aujourd&amp;rsquo;hui — anglais, français et danois (da) — pas seulement la paire EN/FR mise en avant sur le site du projet. Les étapes ci-dessous montrent comment en ajouter une de plus, avec l&amp;rsquo;espagnol (es) comme exemple travaillé.
Ajouter une langue demande quatre points de contact : un nouveau fichier de traduction, son enregistrement dans l&amp;rsquo;initialiseur i18n, une option dans le sélecteur des Réglages, et une entrée dans le journal de décisions.</description></item><item><title>Guides pratiques</title><link>https://kaivalya.eu/projects/trainUs/docs/guides-pratiques/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/docs/guides-pratiques/</guid><description>Installer TrainUs comme application sur Android TrainUs est une application web progressive (PWA) : elle s&amp;rsquo;installe comme une vraie application sur votre téléphone, avec sa propre icône sur l&amp;rsquo;écran d&amp;rsquo;accueil, et fonctionne sans barre de navigation du navigateur.
Important : si TrainUs est déjà ouvert dans un onglet de votre navigateur, l&amp;rsquo;application installée ne se lancera pas correctement — le navigateur et l&amp;rsquo;application se marchent sur les pieds. Fermez d&amp;rsquo;abord l&amp;rsquo;onglet dans le navigateur avant de lancer l&amp;rsquo;application installée.</description></item><item><title>Référence</title><link>https://kaivalya.eu/projects/trainUs/developers/technical/</link><pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/developers/technical/</guid><description>Cette page décrit chaque partie de TrainUs en détail : pile technique, schéma, routes, composables. Pour une première prise en main guidée, voir Démarrage rapide ; pour des tâches concrètes, voir Guides pratiques ; pour le « pourquoi » des choix, voir Comprendre l&amp;rsquo;architecture.
Paternité IA. La grande majorité du code source de ce projet a été écrite par des assistants IA (principalement Claude). L&amp;rsquo;auteur humain a dirigé l&amp;rsquo;architecture, relu chaque modification, guidé l&amp;rsquo;implémentation et pris toutes les décisions de conception et de produit — mais si l&amp;rsquo;auteur, c&amp;rsquo;est celui qui tape les lignes, ce crédit revient en grande partie à l&amp;rsquo;IA.</description></item><item><title>Référence</title><link>https://kaivalya.eu/projects/trainUs/docs/user-guide/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/docs/user-guide/</guid><description>Cette page décrit chaque écran de TrainUs en détail : actions disponibles, champs des formulaires, raccourcis clavier. Pour une présentation générale, voir Démarrage rapide ; pour le « pourquoi » des choix, voir Comprendre TrainUs.
Premier lancement La toute première fois que vous ouvrez TrainUs, une fenêtre d&amp;rsquo;avertissement unique explique deux contraintes importantes de l&amp;rsquo;application :
Un seul onglet à la fois — TrainUs ne peut être ouvert que dans un seul onglet de navigateur.</description></item><item><title>Comprendre l'architecture</title><link>https://kaivalya.eu/projects/trainUs/developers/comprendre-l-architecture/</link><pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/developers/comprendre-l-architecture/</guid><description>Cette page explique pourquoi TrainUs est construit ainsi. Pour les faits — schéma, routes, champs exacts — voir la Référence.
Pourquoi pas de serveur ? Beaucoup d&amp;rsquo;applications de fitness fonctionnent avec un compte et un serveur central. TrainUs fait le choix inverse : c&amp;rsquo;est une Progressive Web Application qui tourne entièrement dans le navigateur, avec toutes les données stockées localement via SQLite WASM et OPFS. Il n&amp;rsquo;y a aucun serveur à exploiter, aucun système de comptes à concevoir et sécuriser, et l&amp;rsquo;application continue de fonctionner — intégralement — sans aucune connexion réseau.</description></item><item><title>Comprendre TrainUs</title><link>https://kaivalya.eu/projects/trainUs/docs/comprendre/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/docs/comprendre/</guid><description>Pourquoi une application locale ? Beaucoup d&amp;rsquo;applications de fitness fonctionnent avec un compte et un serveur central : c&amp;rsquo;est pratique pour synchroniser vos appareils, mais cela veut aussi dire qu&amp;rsquo;une société tierce héberge vos données, et que l&amp;rsquo;application devient inutilisable sans connexion — ou si le service ferme un jour.
TrainUs fait le choix inverse : tout tourne dans votre navigateur, vos données sont stockées localement, et rien n&amp;rsquo;est jamais envoyé à un serveur.</description></item><item><title>IA : la méthode</title><link>https://kaivalya.eu/projects/trainUs/blog/2026-07-21-ia_methode/</link><pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/blog/2026-07-21-ia_methode/</guid><description>Dans un précédent article, j&amp;rsquo;expliquais pourquoi j&amp;rsquo;ai massivement utilisé l&amp;rsquo;IA pour créer TrainUs. Ici, je vais parler du comment.
Parce que oui, suivre une méthode ça aide ! Du coup j&amp;rsquo;ai adopté peu ou prou la méthode habituelle en fait : une spec, un plan, des règles (bon ça s&amp;rsquo;est plus explicite avec une IA), des tests (vital ici) et de la doc (pour moi, pour elle, pour les contributeurs et pour les utilisateurs).</description></item><item><title>Pourquoi utiliser l'IA</title><link>https://kaivalya.eu/projects/trainUs/blog/2026-06-20-ia_pourquoi/</link><pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/blog/2026-06-20-ia_pourquoi/</guid><description>J&amp;rsquo;ai massivement utilisé l&amp;rsquo;IA pour créer TrainUs.
De par ma formation (ingénieur en informatique) et mon expérience professionnelle (j&amp;rsquo;ai été développeur), j&amp;rsquo;ai les compétences techniques requises pour créer ce type d&amp;rsquo;application. Mon problème n&amp;rsquo;a jamais été les compétences, ni même les idées d&amp;rsquo;application : j&amp;rsquo;ai toujours eu plein d&amp;rsquo;idées de projets personnels. Mes problèmes ont toujours été le temps et l&amp;rsquo;envie.
Enfin, dans mon domaine professionnel, il m&amp;rsquo;est nécessaire d&amp;rsquo;apprendre à utiliser ce genre d&amp;rsquo;outils, et le faire sur des projets personnels permet beaucoup plus d&amp;rsquo;expérimentations que sur mon lieu de travail.</description></item><item><title>Lancement du site TrainUs</title><link>https://kaivalya.eu/projects/trainUs/blog/2026-06-14-lancement/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/blog/2026-06-14-lancement/</guid><description>This article is available in English: Launching the TrainUs website
Aujourd&amp;rsquo;hui, je publie le site de documentation de TrainUs, une application de suivi fitness que je développe depuis quelques mois.
C&amp;rsquo;est quoi TrainUs ? TrainUs est une application web progressive (PWA) qui tourne entièrement dans le navigateur. Il n&amp;rsquo;y a pas de serveur, pas de compte à créer, pas de données envoyées quelque part. Tout est stocké localement sur votre appareil grâce à SQLite WASM et l&amp;rsquo;API OPFS (Origin Private File System).</description></item><item><title>Contact</title><link>https://kaivalya.eu/projects/trainUs/contact/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kaivalya.eu/projects/trainUs/contact/</guid><description>Pour signaler un bug, proposer une idée ou contribuer au projet, vous pouvez ouvrir une issue sur le dépôt ou nous écrire par e-mail :
Activez JavaScript pour afficher l'adresse e-mail.</description></item></channel></rss>