Login / Sign up
Discover Bonzai
Terms of Use
Legal notice
Privacy
Region
Language
matyo91
matyo91
10
Subscribers
Facebook
X
Whatsapp
Telegram
👉 You must follow matyo91 to access chat.
Feed Shop About

Automatiser la Création de Screenshots de Code avec Carbon.now

Facebook
Twitter
Whatsapp
Telegram
9 months ago

La création de captures d'écran de code est une tâche courante pour les développeurs, que ce soit pour documenter des projets, partager des extraits de code sur les réseaux sociaux ou illustrer des articles de blog. Carbon.now est un outil populaire qui permet de générer des captures d'écran esthétiques de code. Cependant, lorsque vous avez besoin de créer ces images en grande quantité ou de manière automatisée, le faire manuellement devient fastidieux.

Dans cet article, nous allons explorer comment automatiser la génération de ces captures d'écran en utilisant Carbon.now et Symfony Panther. Panther est un outil de navigation web headless qui nous permettra de manipuler et d'interagir avec Carbon.now de manière programmatique.

Pourquoi Automatiser avec Carbon.now ?

Carbon.now est un service en ligne simple et efficace pour créer des images de code avec un style personnalisable. Automatiser ce processus présente plusieurs avantages : cela permet de gagner du temps en évitant de répéter la même tâche pour la création de nombreuses images, d'assurer une consistance visuelle en appliquant les mêmes paramètres (thème, police, taille, etc.) à toutes les images, et de faciliter l'intégration de la création d'images de code dans des workflows tels que des pipelines CI/CD, des scripts de publication de blogs, ou des bots de réseaux sociaux.

Prérequis

Avant de commencer, assurez-vous d'avoir les éléments suivants :

  • PHP installé sur votre machine.

  • Symfony Panther installé. Si ce n'est pas encore fait, vous pouvez l'installer via Composer :

    composer require symfony/panther

Configurer un Projet PHP avec Panther

Commencez par créer une nouvelle classe PHP qui encapsulera toute la logique pour interagir avec Carbon.now. Voici un exemple de classe que nous allons utiliser :

Générer une Capture d'Écran avec Flow

Au lieu de générer une capture d'écran de manière directe, vous pouvez utiliser la puissance de la bibliothèque Flow pour orchestrer et paralléliser la création de plusieurs captures d'écran de code avec Carbon.now. Flow est une bibliothèque qui permet d'exécuter des tâches asynchrones et parallèles de manière efficace.

Configuration de Flow pour Générer des Captures d'Écran

Dans cette étape, nous allons créer une commande Symfony qui utilisera Flow pour générer plusieurs images de code en parallèle. Voici un exemple de commande que vous pouvez ajouter à votre projet Symfony :

Explication

  • Command : La commande app:carbon-image permet de générer plusieurs captures d'écran de code en parallèle en utilisant des instances de CarbonImage.

  • Flow : Flow orchestre l'exécution parallèle des tâches, ce qui est particulièrement utile pour traiter plusieurs extraits de code à la fois.

  • Drivers : Flow propose plusieurs drivers pour gérer l'asynchronisme. Ici, un driver est choisi aléatoirement pour démontrer la flexibilité, mais vous pouvez spécifier un driver spécifique selon vos besoins.

  • CarbonImage : Chaque instance de CarbonImage représente un extrait de code à convertir en image. Le code source et le chemin de sauvegarde sont spécifiés pour chaque instance.

Personnaliser Votre Capture d'Écran

La classe CarbonImageJob peut être facilement étendue pour accepter différentes configurations de thème, de police, de taille, etc. Voici comment vous pouvez le faire :

  1. Ajouter des paramètres au constructeur pour la configuration.

  2. Modifier la méthode getCarbonUrl pour inclure ces paramètres dans l'URL de la requête.

Conclusion

Grâce à Symfony Panther et Flow, vous pouvez facilement automatiser la création de captures d'écran de code avec Carbon.now. Cette automatisation peut être particulièrement utile pour les blogueurs, les formateurs, ou tout développeur souhaitant partager du code de manière visuelle.

En intégrant ce processus dans vos workflows, vous gagnerez en temps, en consistance, et en efficacité. N'hésitez pas à adapter cette approche à vos besoins spécifiques et à expérimenter avec les nombreuses options de personnalisation offertes par Carbon.now.

Se former à Flow

Si vous souhaitez approfondir vos connaissances sur le framework Flow et découvrir d'autres moyens d'améliorer votre productivité en tant que développeur, je propose une formation complète sur Flow disponible sur

matyo91
matyo91
€49.00

Automation avec Flow en PHP

Open

Ressources Supplémentaires

  • Flow

  • Symfony Panther Documentation

  • Carbon.now.sh

  • Documentation PHP

Follow matyo91 to comment
matyo91

matyo91

Je t'aide à automatiser tes process
10
Visit this Bonzai
Follow matyo91 to get the latest updates.

🎮 Créer un mini-jeu Discord avec VITE : un retour d'expérience

1 week ago
14

🎶 Open Mic du Groover Club - Mai 🧡

2 weeks ago
14

▶️ 2025-05-26 DjMatyo Soundcloud set with MC

2 weeks ago
17

🚀 Du développement à la production : déployer une API Symfony avec Upsun

2 weeks ago
20

🚀 De zéro à héros avec Sylius : Au cœur de l'atelier sur les essentiels pratiques

2 weeks ago
17

🚀 Sylius Days 2025 : l'innovation en matière de commerce électronique

2 weeks ago
23

🇪🇺 DJ Matyo Live special Eurovision 2025 🌟

3 weeks ago
20

Générez automatiquement des miniatures YouTube personnalisées de style Ghibli avec PHP et l'IA

3 weeks ago
21

Recherche, Achat et Organisation de Tracks pour DJ Sets

4 weeks ago
32

Automating Gmail and Google Calendar with PHP Agents ?🧠⚡

1 month ago
24

Supercharge Your Job Search: Automate with MCP, Astra, Langflow and Arize

1 month ago
29

DJ Matyo Live

1 month ago
32

Build a Game for the largest game dev competition in the world

1 month ago
30

Demande à Codex

1 month ago
42

DJ Matyo Live repost track

1 month ago
33

Darkwood v1.0.1 release

1 month ago
43

Transforme ta voix en article de blog avec GPT et Meteor

1 month ago
44

Darkwood 1.0.0 is Here

2 months ago
39

Coder comme un DJ, mixer comme un dev

2 months ago
53

Créer un interpréteur Lambda en PHP

2 months ago
59
© 2025 Bonzai Privacy Legal notice Terms of Use