• # Codes à récupérer

    Posté par . En réponse au journal C'est en forgeant qu'on devient forgeron. Évalué à 4.

    Bonjour,

    Pour ceux que ça intéresse, j'ai un jour développé une forge mono-projet pour mon projet Logram (j'avais des besoins assez spécifiques). Le code est public et disponible sous GNU Affero GPLv3 ici : http://gitorious.org/logram/website/ . Vous pouvez voir ce que ça donne en production sur http://www.logram-project.org .

    C'est une forge utilisable par n'importe qui, mais je n'ai pas encore connaissance d'un projet qui l'utilise (il faut dire qu'il faut adapter pas mal de trucs pour la rendre utilisable par autre-chose que Logram, dont le thème qui doit être refait).

    Côté fonctionnalités, c'est assez complet, la forge la plus complète à ma connaissance, ce qui explique pourquoi je l'ai faite au lieu de réutiliser l'existant :

    • Forum classés par catégories, avec vraie gestion du lu/non-lu, modération des commentaires, permissions, déplacement de sujets, sondages, etc. Quasiment au niveau de phpBB quand j'avais comparé.
    • Messagerie privée entre utilisateurs, avec possibilité d'avoir plusieurs utilisateurs par fil de discussion.
    • Annonces en page d'accueil, soit globales au projet, soit privées pour chaque utilisateur (l'équivalent des journaux de Linuxfr). Les membres peuvent les commenter.
    • Wiki utilisant la syntaxe Markdown (comme le forum, les MP, les commentaires d'annonces et les rapports de bugs), avec possibilité de protéger et de rendre privées des pages et d'avoir un historique de modifications
    • Un petit module "pastebin" histoire d'avoir un truc intégré au site et de ne pas devoir s'en remettre à un service externe.
    • Un système de demandes (bug reports) inspiré de Bugzilla : on sait tout faire. Chaque demande a un type (bug, idée, demande d'aide), peut avoir un nombre infini d'état (ouvert, résolu, en cours, abandonné, etc), des demandes filles, des demandes liées. Une demande peut être attribuée à un utilisateur, une adresse e-mail (pour que tous les développeurs n'aient pas à s'inscrire sur la forge) ou une URL externe (pour upstreamer des bugs). On peut manipuler les demandes comme on veut, les filtrer, les trier, les supprimer, etc.
    • Un espace de téléchargements, la partie à épurer. La page d'accueil de cet espace permet de télécharger des fichiers, mais Logram étant une distribution, il permet également de télécharger des paquets, de les rechercher, de les gérer, un peu comme packages.debian.org. On peut même voir les paquets en cours de construction par le serveur de construction, en temps réel, comme l'openSUSE Build Service (sauf que le projet Logram étant arrêté, il n'y a plus de paquets qui se construisent).

    Bref, une autre forge en Django, comme quoi on sait faire pas mal de choses avec Django. Son but est d'être la plus complète possible, et on a même quelque-part un plugin SVN pour explorer un dépôt SVN (le plugin se base également sur PySVN). J'espère que ce projet à l'arrêt (quoique je le reprendrai peut-être dans quelques temps) intéressera l'auteur de Django-Simple-Forge :) .

    Merci de m'avoir lu, et désolé pour le long post publicitaire.