KOMPOSE.
Toutes les ressources

Transformez votre photo de profil GitHub en portrait ASCII qui s'auto-tape

Le problème résolu

Votre README de profil GitHub est l'une des pages les plus vues que vous possédez, et c'est généralement un mur de badges statiques que personne ne lit. Cette ressource donne un script Python gratuit qui transforme n'importe quelle photo en portrait ASCII monochrome qui s'écrit tout seul à l'ouverture de votre profil, s'anime en boucle, et fonctionne en mode clair et sombre sur GitHub. Aucun JavaScript, aucun service tiers, aucun token API. Juste un script, une photo, et un fichier SVG que GitHub sait déjà animer.

Le prompt à copier

1. Créez votre repo de profil GitHub (doit correspondre exactement à votre username) : gh repo create  --public --clone && cd 

2. Installez les dépendances : pip install pillow numpy opencv-python-headless rembg onnxruntime

3. Enregistrez le script sous ascii.py (script complet envoyé sur demande, commentez le mot-clé).

4. Choisissez une photo : éclairée sur le côté à 45°, fond uni, menton jusqu'aux cheveux qui remplit le cadre, léger angle.

5. Lancez-le : python ascii.py votre-photo.jpg ascii.svg

6. Ajoutez-le à votre README : 

7. Ajustez GAMMA (1.0-1.4) et CLAHE_CLIP (2.2-3.0) dans le script si le premier rendu est délavé ou bruité, puis relancez.

Pourquoi ça marche spécifiquement sur GitHub

GitHub supprime les balises <script> des README et neutralise presque tout le CSS inline. Mais il affiche entièrement les fichiers SVG intégrés via une balise <img> classique, et il exécute leurs animations SMIL natives. C’est la faille exploitée ici : tout le mouvement doit vivre dans le fichier SVG lui-même, le README ne fait que pointer dessus.

Configuration

gh repo create <votre-username> --public --clone
cd <votre-username>

pip install pillow numpy opencv-python-headless rembg onnxruntime

Le premier lancement télécharge un modèle de suppression d’arrière-plan d’environ 176 Mo, une seule fois.

Le pipeline en quatre étapes

Chaque étape existe parce que la sauter dégrade visiblement le résultat.

1. Découper l’arrière-plan

rembg isole le sujet. Tout ce qui est hors du sujet est forcé en blanc pur, qui correspond à l’extrémité vide de la rampe de caractères. Sans cette étape, l’arrière-plan se remplit de caractères denses et noie le portrait.

2. CLAHE pour le contraste local

Égalisation d’histogramme adaptative à contraste limité. L’autocontraste classique agit globalement et laisse un visage uniformément éclairé en un seul ton moyen plat. CLAHE booste le contraste par tuile, donnant de vrais reflets et ombres au visage. Une limite de contraste entre 2,2 et 3,0 est la plage utile, au-delà ça amplifie la texture de peau en bruit.

3. Convertir la luminosité en caractères

RAMP = " .`:-=+*cs#%@"   # clair/épars -> sombre/dense

L’espace en tête vide l’arrière-plan. Restez en monochrome : une seule couleur de remplissage, la coloration arc-en-ciel par caractère est ce qui donne cet effet « parasite télé » aux portraits ASCII ratés. Ajustez le gamma (1.0 à 1.4 selon la photo).

4. Animer la frappe

Chaque ligne est enveloppée dans un clip-path dont la largeur s’anime de 0 à sa valeur complète. Un petit bloc suit le bord comme un curseur. Les lignes sont décalées de haut en bas, et une animation « driver » auto-chaînée peut relancer toute la séquence en boucle indéfiniment.

Modes clair et sombre

.a { fill: #6e7681; }
@media (prefers-color-scheme: dark) { .a { fill: #c9d1d9; } }

Exigences sur la photo

  • Lumière latérale, fenêtre à 45 degrés environ, tout le reste éteint.
  • Remplissez le cadre, menton jusqu’au-dessus des cheveux.
  • Fond uni, pas de noir sur fond sombre.
  • Léger angle, pas de face totalement droite.

Récupérer le script

Commentez le mot-clé sous le post et je vous envoie le script complet, prêt à lancer.

Ressources liées

Toutes les ressources
AI & AutomatisationClaude

Trier et résumer sa boîte mail en 2 minutes

Votre boîte mail déborde et vous perdez 20 minutes chaque matin à trier. Ce prompt lit vos mails non lus, les classe par priorité et vous prépare des brouillons de réponse, sans jamais rien envoyer sans votre accord.

›_Tu es mon assistant de tri de boîte mail. Voici ta mission : 1. Récupère mes mails non lus
Voir la fiche
Site WebClaude

Comment sont construits les sites de Lando Norris, Charles Leclerc et Oscar Piastri

Les sites de pilotes F1 (landonorris.com, charlesleclerc.com, oscarpiastri.com) donnent l'impression d'un budget inatteignable, alors qu'aucun des trois n'utilise de 3D : tout repose sur Lenis, GSAP ScrollTrigger, des révélations de texte masquées et de la vidéo plein cadre. Le vrai blocage, c'est qu'un seul prompt ne peut pas produire ce type de site, parce que les systèmes dépendent les uns des autres (le moteur de scroll avant les animations, le préloader avant le hero, les épinglages dans une seule séquence). Ce guide détaille ce qui tourne réellement sous le capot des trois sites, puis découpe la construction en 10 étapes avec un prompt prêt à coller pour chacune.

›_Tu es mon partenaire de build pour un site one-page cinématique de pilote ou d'athlète, da
Voir la fiche
Site WebClaude

Reproduire une page produit Apple de A à Z (le démontage du code)

Les pages produit d'Apple passent pour hors de portée, alors qu'elles reposent sur cinq couches empilables et toutes reproductibles. Cette ressource ouvre les bundles JavaScript livrés en production sur iPhone 17 Pro, AirPods Pro et MacBook Pro, montre ce que chacune fait vraiment (shaders GLSL maison, scrub vidéo en HLS, moteur de keyframes piloté en CSS), puis donne l'ordre de construction et le prompt complet.

›_You are building an Apple-style product page: a long scroll where the visuals are driven b
Voir la fiche
Passer à l'action

On automatise ça pour vous ?

Ces prompts font gagner des heures. On peut aller plus loin et intégrer l'IA directement dans vos process.

Réserver un appelÀ propos de nous