CMS PDF

Un système de gestion de contenu simple et efficace pour les petites structures

Symfony 8+ Bootstrap 5 MySQL/MariaDB Docker
🏛️

À propos du projet

CmsPdf est une solution web développée spécifiquement pour faciliter la gestion et la publication de documents administratifs pour les structures des petites collectivités.

Ce projet open-source permet aux petites structures de mettre en ligne facilement leurs documents officiels au format Pdf (délibérations, arrêtés, comptes rendus, etc.) de manière organisée et accessible à leur public.

Fonctionnalités principales

Tout ce dont vous avez besoin pour gérer votre site administratif

Gestion des rubriques

Organisez vos documents par catégories (Conseil municipal, Urbanisme, État civil, etc.)

Upload de PDF

Ajoutez facilement vos documents PDF avec titre, description et date

Paramètres personnalisables

Modifiez textes, coordonnées et emojis depuis l'interface d'administration

Réorganisation drag & drop

Réordonnez vos rubriques et documents facilement avec des boutons

Espace d'administration sécurisé

Accès réservé aux administrateurs avec authentification

Design responsive

Interface adaptée à tous les écrans (mobile, tablette, desktop)

Commandes utiles
Commande Description
docker compose logs -f Voir les logs en temps réel
docker compose logs php Voir les logs du container PHP
docker compose ps Voir l'état des containers
docker compose restart Redémarrer tous les containers
docker compose down Arrêter les containers
docker compose up -d Démarrer les containers
docker compose pull && docker compose up -d Mettre à jour l'application

Technologies utilisées

Stack technique moderne et performant

Backend
  • Symfony 6+ - Framework PHP moderne et robuste
  • Doctrine ORM - Gestion de la base de données
  • Twig - Moteur de templates
  • Symfony Security - Authentification et autorisation
  • Symfony Forms - Gestion des formulaires
Frontend
  • Bootstrap 5.3 - Framework CSS responsive
  • Bootstrap Icons - Bibliothèque d'icônes
  • JavaScript Vanilla - Interactions dynamiques
  • CSS3 - Animations et dégradés
  • Emoji Picker - Sélecteur d'emojis personnalisé
Base de données & Déploiement

MySQL / MariaDB - Stockage des données

Docker & Docker Compose - Conteneurisation et déploiement

Architecture du projet

Structure des entités
Rubrique
• Nom
• Description
• Icône
• Couleur
• Position
• Documents (relation)
Document
• Titre
• Description
• Nom du fichier
• Date d'upload
• Position
• Rubrique (relation)
SiteSettings
• Nom structure
• Emojis
• Textes bannière
• Coordonnées
• Horaires
User
• Email
• Password (hashé)
• Roles (ROLE_ADMIN)

Prochainement sur github