Edit : Je suis en train de retravaillé le framework en ajoutant un système de documentation grâce à phpDoc et des tests unitaires grâce à phpunit. Le framework sera donc plus simple à prendre un main pour quelqu'un d'extérieur. (je vais essayer de rajouter des petites fonctionnalités au passage)
Bonjour à tout le monde !
J'ai posté exactement le même message sur le forum d'openclassrooms mais je souhaite aussi partager mon projet avec vous.
Je suis Alexis, étudiant en 3ème de license de maths et d'informatiques à Angers à partir de septembre. Je développe en amateur et je me forme sur les langages web depuis plus de 7 ans grâce à plusieurs sites communautaires dont le SdZ devenu openclassrooms et grafikart. Je ne suis pas là pour vous raconter ma vie mais pour vous présenter un projet sur lequel j'ai travaillé depuis le début de l'année et qui me tient à coeur.
Je suis heureux de vous présenter la v1.0 d'Avelow.
Avelow est un framework 100% français permettant le développement rapide d'application web. Pour le back-end, il est développé en PHP et utilise Slim comme base pour le routing. Pour le front-end, AngularJs est utilisé pour simplifier la communication avec le back-end.
En savoir plus sur le projetAprès avoir découvert AngularJs, j'ai voulu l'essayer. Le problème est la gestion des données et de leur stockage.
Comment les stocker, les modifier, les récupérer, les supprimer ?
Après quelques recheches, une API rest semble idéale.
Mais où trouver une API rest simple à mettre en place et rapide à configurer ?
Nul part. Symfony avec un bundle externe, trop compliqué pour l'amateur que je suis. Les autres framework, pareil et en plus, il faut créer toutes les requêtes pour accèder à la base de données pour chaque entité.
J'ai donc commencé à développer mon petit framework maison. Et en 5 mois, je suis passé du petit framework maison à un framework rapide, simple et complet.
Généralités et avancementAujourd'hui, Avelow possède différentes fonctionnalités :
Le framework est open source et gratuit. L'objectif principal est de proposer le framework à d'autres développeurs pour qu'ils l'essayent, le testent, l'adoptent et l'améliorent !
Le projet et son originalité
Un framework 100% made in France avec un documentation écrite entièrement en français et le tout gratuitement et pour tout le monde !
Le petit plus
Salut,
Je n'ai pas encore testé. Je vais le faire (faut que je regarde Angular avant...).
Premier truc : l'installation, tu pourrais faire beaucoup plus simple : mettre le fw sur packagist pour permettre de faire un simple composer create-project avelow/avelow
. Plus simple que Dézippez un fichier et tapez une unique commande dans le terminal.
.
Bonsoir.
J'ai jeté un œil vite fait et il y a une chose que je ne comprends pas.
Pour l'installation, il faut télécharger le zip, le dézipper, puis faire un composer install.
Vu qu'il y a l'utilisation de Composer pour l'installation du Framework, pourquoi ne pas faire en sorte de l'installer en faisant juste par exemple un composer create-project avelow/avelow ProjectName
, puis faire si nécessaire un composer install
dans le dossier du projet ?
Ce qui permettrait de télécharger directement le projet sans avoir nécessairement besoin d'aller sur GitHub pour télécharger l'archive, puis de la dézipper.
À utiliser Composer pour le Framework, autant utiliser les avantages de Composer à son maximum, non ?
Forever aura été plus rapide que moi. :)
Merci pour le conseil, je ne savais pas spécialement comment fonctionnait packagist (je l'avais même oublié ^^')
Je viens de me renseigner et au final, c'est simple à utiliser ! Je viens donc de mettre à jour le site et l'utilisation de create-project est maintenant disponible.
Une chose, aussi, pour utiliser ton framework un doc dev serais pas, tu devrais revoir tes commentaire pour générer la PHPDoc ca seras plus simple pour les explication, tu peut générer des templates sympa en plus avec phpdocumentor et du coup ben t'as une vrai doc developpeur cool
J'ai prévu retravailler la documentation prochainement. Je voulais présenter le projet avec une documentation (que j'ai fait un peu vite mais c'est mieux que rien). Après le framework n'est pas très compliqué du côté AngularJs et la doc déjà fait rend le php accessible et utilisable, c'est un peu un solution de secours !
Une chose, aussi, pour utiliser ton framework un doc dev serais pas, tu devrais revoir tes commentaire pour générer la PHPDoc ca seras plus simple pour les explication, tu peut générer des templates sympa en plus avec phpdocumentor et du coup ben t'as une vrai doc developpeur cool
Je ne pense pas qu'une simple doc généré soit suffisant. Il faut aussi, au minimum, un doc pour installer, bien débuter, etc.
Oui, mais la je parle uniquement du code, le commentaire du code en lui meme est tout moche ^^ ( c'est pas mechant hein avelow ) un petit coup de
/**
* description: c'est une desscrition
*
*
* @param sting id
*/
plutos que
// c'est une description
// et une string en parametre
c'est deja beaucoup mieux
D'ailleurs, la doc est ici. Je te conseille de tout lire.
Un exemple :
/**
* Description courte ici
*
* Description longue ici.
* Elle peut faire plusieurs lignes.
* Elle peut inclure du **Markdown**.
*
* @param string $id Description du paramètre ici
* @return string Description de la valeur de retour
*/
Tout est optionel, mais le plus souvent, il y a la description courte, les paramètres, et la valeur de retout. La doc précise aussi que tu peux utiliser du Markdown dans les différentes descriptions (inline pour la description courte, inline+multiline pour la description longue et inline pour le description de variable).
Normalement, on utilise l'anglais dans les docblocks pour pouvoir être compris par le plus grand nombre, mais comme ton projet est 100% français
...
Un bon éditeur peux te générer le machin tout seul (pas les descriptions, mais les params, le return et les @throws
).
Je n'ai absolument pas travaillé les commentaires du projet. Je les avais écris pour comprendre ce que je faisais ! Je visais seulement un objectif fonctionnel : je voulais que tout fonctionne.
Dans la prochaine version, les dossiers seront réorganisé pour laisser seulement accessible les fichiers qui doivent l'être, les commenter proprement et mettre les autres dans un dossier vendor.
En tout cas merci pour les conseils qui me permettrons d'améliorer Avelow !
Je suis en train de travailler avec mon framework pour un projet, et je rencontre encore des petites erreurs que je corrige au fur et à mesure, pour l'instant il s'agit plus d'une beta d'une framework, d'ici un ou deux mois, il devrait être beaucoup plus fonctionnel !
j'ai commencé a lire la doc, cela m'a l'air prometteur. je pense y jeter un oeuil dans les jours a venir.