Technologies que j'utilise
Cuzeac FlorinVoici les technologies avec lesquelles je suis le plus productif.
Vous pouvez scroller de gauche à droite pour voir toutes les technologies.
Les principales technologies que j'ai utilisées sur ce projet sont les suivantes, en pourcentage d'utilisation :
1806 au total
(nombre de commits)Environ 95.31%
en TypeScriptEnviron 0.45%
en JavaScriptEnviron 0.54%
en CSSEnviron 3.66%
en MDXEnviron 0.04%
en Shell
Les langages que j'ai le plus utilisé cette semaine :
TS
(72.00%)
MDX
(22.00%)
Jade
(2.00%)
Pug
(1.00%)
SCSS
(1.00%)
1. Avec un framework plus orienté front (Next.js)
J'ai commencé à travailler avec React et Next.js en 2020, à la fin de mes études. Depuis, j'ai eu l'occasion de développer plusieurs projets professionnels et personnels en utilisant ces technologies. Leur flexibilité et leur puissance m'ont permis de créer des applications web performantes et évolutives. Grâce à Next.js, j'ai pu tirer parti du rendu côté serveur (SSR) et de la génération de sites statiques (SSG), ce qui a considérablement amélioré les performances et le SEO de mes projets.
Quelques patterns que j'utilise souvent avec Next.js
2. Avec un framework plus orienté back (Express ou Fastify)
Pour les projets nécessitant un backend robuste, j'utilise des frameworks comme Express ou Fastify. Express est un choix populaire grâce à sa simplicité et sa flexibilité, tandis que Fastify se distingue par ses performances élevées et son faible overhead. Ces frameworks me permettent de créer des API rapides et scalables, tout en offrant une grande liberté dans la structuration du code et l'intégration de middlewares.
3. Design et interfaces (Tailwind CSS et shadcn/ui)
Construire des composants flexibles et accessibles est un défi. On peut soit utiliser (et étendre) une bibliothèque de composants, soit créer ses propres composants. C’est pour cette raison que j’utilise désormais shadcn/ui.
Cette bibliothèque propose des composants bien conçus et extensibles, basés sur des primitives accessibles et non stylées. Cela inclut des éléments de base comme des boutons et des champs de saisie, mais aussi des icônes, des graphiques, et même des thèmes personnalisés.
4. Base de données (MongoDB ou Postgres)
Pour la gestion des bases de données, j'utilise principalement MongoDB et Postgres. MongoDB est une base de données NoSQL qui offre une grande flexibilité grâce à son modèle de documents, ce qui est idéal pour les applications nécessitant une structure de données dynamique. D'autre part, Postgres est une base de données relationnelle robuste et riche en fonctionnalités, parfaite pour les applications nécessitant des transactions complexes et une intégrité des données stricte. Ces deux bases de données me permettent de choisir la solution la plus adaptée en fonction des besoins spécifiques de chaque projet.
5. IA (v0, GitHub Copilot et ChatGPT)
Pour améliorer ma productivité et la qualité de mon code, j'utilise plusieurs outils d'intelligence artificielle comme v0, GitHub Copilot et ChatGPT. v0 m'aide à éditer, refactoriser et déboguer le code, en particulier pour les refactorisations fastidieuses ou la restructuration du code. GitHub Copilot fournit des suggestions de code en temps réel directement dans mon IDE, ce qui accélère le développement et réduit les erreurs. ChatGPT est utile pour obtenir des explications détaillées, des exemples de code et des solutions à des problèmes complexes. Ces outils ne sont pas parfaits, mais ils représentent un gain de temps considérable et améliorent la qualité globale de mes projets.