Il y a peu de temps, j’ai du écrire un cours de PHP. Même si on m’avait fournit les supports de l’année précédente, des exercices etc., j’ai préféré faire mon propre support de cours avec lequel je serai le plus à l’aise.

Mon problème, je n’avais pas envie de créer des diapositives, un document texte, et d’héberger en plus des TDs sur internet, j’ai donc préféré tout mettre au même endroit. Pour ce faire, j’ai travaillé sur un outil qui vise à mélanger le support de cours contenant toute les explications et informations avec les diapositives diffusées lorsque je présente, j’ai nommé cet outil Slidey.

Tout le cours, c’est à dire le support, les slides et les TDs sont disponibles ici : http://gregwar.com/php/

Résultat

Vous pourrez à tout moment passer en mode slide en cliquant sur le projecteur en bas à droite, ou revenir en mode support standard de la même façon. Utilisez alors les flèches haut et bas pour changer de slide, ou gauche et droite pour changer en utilisant la découverte progressive des éléments prévus à cet effet.

Vous verrez également à droite du support des numéros, ils correspondent à l’emplacement des slides correspondantes. A gauche, le plan permet de savoir ou vous en êtes.

Fonctionnement

Slidey est basé sur du PHP, mais ce langage n’est utilisé que pour « compiler » les pages et générer un ensemble de documents HTML aplatis. Le résultat d’un build peut d’ailleurs être exporté sur clé USB et visionné sans serveur web.

Le code source servant à générer le cours de PHP est d’ailleurs disponible sur Github : https://github.com/Gregwar/PHP. Il vous suffira de lancer le script build.php ou de tapper « make » pour construire le cours.

Utilisation

Slidey a un coeur très simple, il s’appuie sur Twig pour le rendu des templates, sur GeSHI pour la colorisation syntaxique, et ma bibliothèque de gestion d’images et de conversion des formules LaTeX. Il est désormais versionné sous composer, vous pouvez créer votre propre présentation en tapant simplement :

composer create-project gregwar/slidey-standard

Ce package standard contient un exemple de structure qui vous permettra de partir du bon pied

Peut être une documentation et de plus amples explications prochainement !