Skip to content

✨ feat(apps): page /apps, gwm, vellum et LazyCurl - #82

Merged
kbrdn1 merged 5 commits into
devfrom
feat/#79-apps-page
Oct 19, 2026
Merged

kbrdn1 merged 5 commits into
devfrom
feat/#79-apps-page

Conversation

@kbrdn1

@kbrdn1 kbrdn1 commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Summary

⚠️ Empilée sur #81 (/experience, mêmes fichiers i18n) : à merger après elle.

Une page /apps (FR/EN), une carte par app avec les pixels au survol et le nom retapé :

App Statut affiché Contenu
gwm Disponible version publiée (live), Rust · MIT OR Apache-2.0, site, dépôt, versions, commandes d'installation, démo vidéo
vellum En développement Rust · MIT, « pré-0.1 : pas encore utilisable » (son README), dépôt
LazyCurl Archivé version publiée (live), Go · MIT, dépôt, versions, capture ; libellé du site seulement, le dépôt GitHub n'est pas touché

Sources :

  • Fonctionnalités : reprises du README de chaque dépôt.
  • Commandes d'installation de gwm : celles du tableau de son README (Homebrew, cargo, Scoop, Nix, aqua).
  • Licences : gwm est sous double licence MIT OR Apache-2.0 (badge de son README), les deux autres en MIT : une licence affichée par app plutôt qu'une phrase globale.
  • Version : nouvelle route GET /api/github/releases, en GraphQL sur une liste fixe, sans paramètre, mise en cache une heure. Rien n'est écrit en dur. Si GitHub ne répond pas, la version n'apparaît pas, le reste de la page oui.

Illustrations reprises des dépôts (ajouté en cours de revue) :

  • gwm : la démo de son README (docs/_capture/demo.gif, 3,6 Mo) passée en MP4 H.264 de 1280 px, soit 683 Ko. La capture de la TUI (docs/2.tui/_assets/hero.png) sert d'affiche, en webp de 125 Ko. La vidéo ne joue que visible à l'écran, et pas du tout sous prefers-reduced-motion : l'affiche reste, avec les contrôles.
  • LazyCurl : preview-app.png en webp de 62 Ko.
  • vellum : aucune image dans le dépôt pour l'instant.
  • Textes alternatifs écrits d'après ce que montrent réellement les captures.

SEO : titre, description et image OG propres.

Related Issue

Closes #79

Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📝 Documentation update
  • ♻️ Refactoring (no functional changes)
  • ⚡️ Performance improvement
  • 🎨 Style/UI update

Scope

  • Homepage
  • Blog
  • Projects
  • UI Components
  • i18n / Translations
  • SEO
  • Configuration

Checklist

  • My code follows the project's coding style
  • I have performed a self-review of my code
  • I have tested my changes locally
  • My changes generate no new warnings
  • I have updated the documentation if needed
  • TypeScript compiles without errors (make typecheck)
  • Linting passes (make lint)
  • Formatting passes (bun run fmt:check)

Additional Notes

Vérifié en local :

  • /api/github/releases renvoie v1.10.0 (gwm), v1.3.0 (LazyCurl), null (vellum) ;
  • les versions s'affichent une fois chargées ;
  • 390 px de large : pas de défilement horizontal (la ligne Scoop défile dans son bloc de code).

La nav n'y mène pas encore : c'est #80.

Sur le modèle éditorial d'isrod.eu/fr/experience (la mise en page, pas le
contenu) : intro, frise de tous les postes et formations, un « spread » par
poste et par formation (récit à gauche ; stack et missions à droite, « en
savoir plus » avec les pixels au survol), puis l'open source et la
disponibilité.

Open source : projets maintenus (gwm, vellum, LazyCurl, herdr-plugin-gwm,
claude-crosstalk, kbrdn-docs), contributions (winget, aqua-registry et
awesome-ratatui fusionnées, nixpkgs en revue) et signalements (issues à
snacks.nvim, CodexBar, terminal-browser, elasticlens), chacun relié à sa PR
ou son issue. Les canaux d'installation de gwm sont ceux de son README. Rien
d'autre que des faits : les récits reprennent les missions déjà écrites.

La home remplace les accordéons Parcours par un aperçu (une ligne par poste
et formation, lien vers la page). Données partagées dans app/utils/career.ts ;
Experiences.vue, Studies.vue, leur CSS d'accordéon et les clés devenues
orphelines partent ; les liens du footer visent la nouvelle page.

refs #78
Une carte par app, avec les pixels au survol : gwm (disponible), vellum (en
développement, pré-0.1 d'après son README) et LazyCurl (archivé : le libellé
du site, le dépôt n'est pas touché). Pour chacune : accroche, description,
fonctionnalités reprises du README, langage et licence (Apache-2.0 pour gwm,
MIT pour les deux autres), liens site, dépôt, versions ; pour gwm, les
commandes d'installation du tableau de son README.

La dernière version publiée vient de GitHub (/api/github/releases, GraphQL,
liste fixe, mise en cache une heure) au lieu d'être écrite en dur : elle
n'apparaît pas si GitHub ne répond pas. Titre, description et image OG
propres.

refs #79
gwm : la démo de son README (docs/_capture/demo.gif, 3,6 Mo) en MP4 H.264 de
1280 px (683 Ko), avec la capture de la TUI (docs/2.tui/_assets/hero.png) en
webp comme affiche ; elle ne joue que visible à l'écran, et pas du tout sous
prefers-reduced-motion (l'affiche reste, avec les contrôles). LazyCurl : sa
capture (preview-app.png) en webp. vellum n'a encore aucune image. Textes
alternatifs décrivant ce que montrent les captures.

gwm est sous double licence MIT OR Apache-2.0 (badge du README) : affiché
comme tel au lieu de la seule licence détectée par GitHub.

refs #79
@kbrdn1
kbrdn1 merged commit 85dd8fa into dev Oct 19, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant