Label au-dessus. L'erreur est le seul usage du rouge. Le succès est une coche cyan.
États .yc-field
Pour que je sache à qui je réponds.
L'e-mail doit contenir @ et un domaine.
Adresse reconnue.
Champ désactivé, opacité 0,4.
Accessibilité. Le placeholder n'est pas le label. aria-describedby relie l'aide et l'erreur. aria-invalid sur l'erreur. Le mot « requis » n'est pas rouge.
Sanity. Champs fixes du contact : nom, e-mail, type, message. Pas de schéma libre.
<div class="yc-field is-error">
<label class="yc-label" for="email">E-mail</label>
<input class="yc-input" id="email" type="email" aria-invalid="true" aria-describedby="email-err">
<p class="yc-field__error" id="email-err" role="alert">L'e-mail doit contenir @ et un domaine.</p>
</div>
Carte de stat
Trois faits, pas un de plus. Le séparateur de la ligne est un point, pas un caractère.
Ligne et cartes .yc-stat
10+projets9secteursMajor BTS 2025
10+
projets
9
secteurs
Major BTS 2025
Esmata, génie logiciel
Lecture. Repos, survol (surface 2, bordure plus claire), focus. L'actif descend d'1px sur le fond toile. Aucun autre chiffre.
Sanity. value et label en chaînes fermées. Pas de nombre libre.
Seul verre de la planche. Les panneaux restent dans la zone sombre, hors du visage.
Scène et puce .yc-float
Workflow n8n · Healthy
Proche
Workflow n8n · Healthy
Survol, focus
Loin, opacité 0,4
Workflow n8n · Healthy
Lecture. Pas de halo, pas de pastille qui brille. Le point cyan nomme un statut déjà écrit. Le flou du lointain disparaît si les animations sont réduites.
Sanity. Image locale, data-rot, data-depth. alt vide quand l'image est décorative.
États. La une reste au repos. La grille fige repos, survol, focus et actif. Bordure plus claire au survol, pas de zoom.
Sanity. post : title, slug, date, excerpt, cover. Dates réelles ou année seule.
<a class="yc-article-card yc-article-card--feature" href="/blog/en-ligne">
<time datetime="2026-10-09">9 oct. 2026</time>
<h3>yoanengassam.com est en ligne</h3>
</a>
Ligne de parcours
Le poste en cours a un point cyan. Les étapes passées ont un point neutre. Le fil reste gris.
Du présent vers la formation .yc-timeline-item
févr. 2026 à aujourd'hui, Yaoundé, hybride
Inperfect, Lead Technical Engineer
Je dirige le département Automatisation et IA : conception, déploiement, maintenance, puis accompagnement des équipes jusqu'à l'adoption.
août 2025 à janv. 2026
Inperfect, ingénieur système automatisation et IA
Automatisation des processus et intégration d'outils d'IA pour des PME.
2024 à aujourd'hui
Doc4Geeks, fondateur
Projet personnel. Formations, puis campus cloud. En veille depuis Inperfect.
juin 2024 à août 2025
Lasylab, stagiaire en génie logiciel
Stage de BTS.
2025 à 2026
Esmata, licence professionnelle IGL
Informatique et génie logiciel, obtenue en 2026.
2023 à 2025
Esmata, BTS Génie Logiciel
Major BTS 2025.
Lecture. Inperfect n'apparaît que dans ce parcours : Lead Technical Engineer, Yaoundé, hybride. La dernière carte montre le survol, bordure plus claire, point toujours neutre.
La page courante inverse le texte. Les voisins restent en contour. Rien de vide.
Pages .yc-pagination
Accessibilité. Chaque lien fait au moins 44px. Précédent est désactivé sur la première page, avec tabindex -1. Le courant garde un texte sombre sur fond clair, y compris au focus.
Une phrase, un bouton contour. Le canal est LinkedIn, pas une liste d'e-mails.
Carte .yc-follow
Sanity. Réutilise siteSettings.linkedin. Un seul bouton.
<aside class="yc-follow">
<h3>Notes publiques</h3>
<p>Notes sur l'automatisation, l'IA et ce que je construis.</p>
<a class="yc-btn yc-btn--outline" href="https://www.linkedin.com/in/yoane-lary-koyoe-ngassam-806977313/">Suivre sur LinkedIn</a>
</aside>
Canal de contact
Cartes neutres. Sur WhatsApp, seule l'icône est verte.
Lecture. E-mail au repos, LinkedIn au survol, WhatsApp au focus. Le lien reste cyan. Le bouton vert de page vit chez les atomes, pour ne pas doubler le hero.
Le CITS26 est passé. L'invitation pour la suite reste ouverte.
Passé et invitation .yc-talk
Passé
CITS26, 15 au 17 octobre 2026, Palais des Congrès de Yaoundé
75 % organisation, 25 % outil : préparer votre PME à l'automatisation et à l'IA au Cameroun
J'y suis intervenu, en français, sur la piste Startups & SMEs to Growth, aux côtés d'Yvan Tondji et de Grâce Aurélie Leatitia. Mountain Hub organisait le sommet.
L'idée publique : un système techniquement réussi peut rester inutilisé si l'entreprise n'est pas prête.