Capsules / Flintable

Image de la capsule Flintable

Flintable




Quoi ?


Flintable est un terrain de jeu pour l'utilisation des règles de lint, axé sur les règles de mise en page et les suggestions fixables. Nous avons d'abord mis l'accent sur ESLint, le linter de JavaScript le plus populaire. Flintable permet d'ajouter du code et de le tester régulièrement avec des règles individuelles ou des configurations personnalisées.




Comment ?


Nous avons développé Flintable en utilisant le framework PHP Laravel pour la partie serveur et le framework Vue, accompagné de Tailwind CSS pour la partie cliente. La connexion entre le serveur et le client est assurée par Inertia.


Pour l'édition de code au sein de l'outil, nous utilisons vue-codemirror.


Laravel Horizon gère les files d'attente et les jobs, tandis que Laravel Websockets et Laravel Echo permettent le dialogue entre la file d'attente et le client.


Nous utilisons JSON Schema via AJS et OPIS pour manipuler les schémas de règles ESLint.

Enfin, nous visualisons les données analytiques à l'aide de l'outil Umami.




Pourquoi ?


Travailler sur un même code en équipe peut poser problème, notamment en termes de conventions de code et d'environnements de travail. C'est pourquoi nous avons créé Flintable, qui permet à chacun de configurer au maximum son environnement sans impacter celui des autres. Ainsi, les développeurs peuvent collaborer plus efficacement tout en respectant les environnements de travail de chacun.


Flintable vise à offrir une meilleure flexibilité et un plus grand confort pour coder, tout en maintenant l'harmonie entre les environnements de travail des collaborateurs.




Ensuite ?


- Implémentation de règles et linters pour différents frameworks ?


- Création de règles personnalisées recherchées par la communauté ?


- Stockage des fichiers de configuration en ligne pour faciliter la réutilisation sur d'autres projets ?


- Lancement du lint du code local et distant via une ligne de commande tout au long du processus de développement, en utilisant des outils de contrôle de version comme Git ?


v1.2.1

Icône XIcône Github