Qu'est-ce que c'est ?
Cody est un framework destiné à la création du site web en PHP, Javascript, HTML et Less compatible Windows, Linux et Mac. Il permet de créer simplement et rapidement un site design et complet grâce à sa structure MVC. Et tout ça sans aucune installation, pratique pour développer sur une machine où l'on n'a pas accès au compte administrateur !
L'architecture Model View Controler apporte un cadre de travail propre travail propre alliant traitement, gestion de la base de données et affichage dynamique.
Il inclut quelques librairies comme la gestion des bases de données, l'autoloader, un système de routage et bien d'autres.
Liste des commandes
Pour la version 7.21.67.0.
Affiche la liste des commandes disponible.
Ajoute, liste, ou supprime un module d'API avec le nom spécifié.
Construit le projet, minifie et compile les fichiers. Nécessite npm.
Change le dossier courant ou affiche la liste des fichiers et des dossiers du dossier courant.
Nettoie la console.
Ajoute, liste, ou supprime un composant (controleur, vue, style, script) avec le nom spécifié.
Active ou désactive le mode développeur (bêta-testeur).
Quitte Cody en fermant le serveur PHP si il y en a un.
Télécharge un fichier avec l'URL spécifiée.
Ouvre le projet dans l'explorateur de fichiers.
Ajoute, liste, ou supprime une librairie (PHP, LESS et JavaScript).
Affiche la liste des projets.
Vérifie les mises à jour disponibles.
Créer un nouveau projet avec le nom spécifié puis défini le dossier courant.
Ajoute, liste, ou supprime un objet (classe DTO, classe DAO) avec le nom spécifié.
Télécharge, liste ou supprime un package depuis le dépôt de Cody.
Ouvre la dépôt GitHub de Cody.
Lance un serveur PHP et ouvre le projet dans le navigateur. Si l'option '-f' est ajouté, tous les processus PHP seront arrêté, sinon seul le processus démarrer par Cody sera arrêté.
Arrête le serveur PHP. L'option '-f' arrête tous les processus PHP.
Ajoute, liste, ou supprime une classe de test unitaire.
Ajoute, liste, ou supprime un trait.
Lance les tests unitaires.
Ouvre le projet dans Visual Studio Code.
Diagramme projet
Lors de la création d'un nouveau projet un projet vierge sera créer, il contiendra toutes les librairies nécessaires ainsi que quelques composants et objets de base.
Exemple d'un diagramme d'un projet affichant une page d'accueil traitant des utilisateurs :
Quelques précisions :
- theme.less : fichier contenant des variables accessibles dans chaque fichier Less.
- global.less : style appliqué à chaque page.
- global_before.js : script chargé avant le traitement de la page.
- global_after.js : script chargé après le traitement de la page.
Système de routage
Pour les versions de PHP antérieures à la version 8 veuillez vous référer à la section package.
Inclus dans un projet vierge, le fichier de routage (route.php) permet d'appeler le\les bon(s) controleur(s). Pour ce faire il faut lui donner une adresse de route, puis une fonction anonyme comme ceci :
# Route vers la page d'accueil
r::add('/accueil', c\Accueil::class);
# Route vers la page introuvable
r::add('/404', c\Introuvable::class);
Vous pouvez également définir une route en cas de route introuvale :
# Route vers Introuvable
r::notfound('/404');
Et aussi définir une route par défaut si aucune route n'est demandée ou si aucune route pour un cas de route introuvable n'est définie :
# Route vers Accueil
r::default('/accueil');
Si aucune de ces deux routes n'est définie, le routeur utilisera la première route existante.
Configurer VSCode
Vous pouvez configurer Visual Studio Code afin d'y ajouter des raccourcis pour générer les balises de data binding.
Pour ce faire, ouvrez VSCode, cliquez sur l'engrenage, puis cliquez sur 'User Snippets' :
Puis recherchez le fichier JSON pour le balisage HTML :
Pour terminer, ajouter y ceci :
"php": {
"prefix": "php",
"body": [
"<?php $0 ?>"
],
"description": "php"
},
"pv": {
"prefix": "pv",
"body": [
"<?= $0 ?>"
],
"description": "pv"
}
Ainsi, dès que vous entrez
Sur Mac OS.
Pour utiliser la commande
Packages
Via la commande
Télécharger le nouveau routeur :
Sinon, via la commande
Autoloader de classe
Également inclus dans tout projet créer avec Cody, l'autoloader permet de charger au fur et à mesure les classes demandées. Pour la classe :
namespace Controller;
use Kernel\IO\Render;
class Accueil extends Render {
}
Il chargera les fichiers :
debug/app/accueil/cont.accueil.php
debug/app/accueil/vue.accueil.php
debug/app/accueil/style.accueil.less
debug/app/accueil/script.accueil.js
Licence
Licence MIT
Copyright © 2025 - Thibault BUSTOS (TheRake66)
Permission est accordée, sans frais, à toute personne obtenant une copie de ce logiciel et des fichiers de documentation associés (le "Logiciel"), pour traiter dans le Logiciel sans restriction, y compris, sans limitation, les droits utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et/ou vendre copies du Logiciel et de permettre aux personnes auxquelles le Logiciel est fourni à cet effet, sous réserve des conditions suivantes :
L'avis de droit d'auteur ci-dessus et cet avis d'autorisation doivent être inclus dans tous les des copies ou des parties substantielles du Logiciel.
LE LOGICIEL EST FOURNI « EN L'ÉTAT », SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU IMPLICITE, Y COMPRIS MAIS NON LIMITÉ AUX GARANTIES DE QUALITÉ MARCHANDE, APTITUDE A UN USAGE PARTICULIER ET NON CONTREFAÇON. EN AUCUN CAS, LE LES AUTEURS OU TITULAIRES DE DROITS D'AUTEUR SERONT RESPONSABLES DE TOUTE RÉCLAMATION, DOMMAGES OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS UNE ACTION CONTRACTUELLE, DÉLICTUELLE OU AUTRE, DÉCOULANT DE, HORS OU EN RELATION AVEC LE LOGICIEL OU L'UTILISATION OU D'AUTRES OPÉRATIONS DANS LE LOGICIEL.