Développer une application web accessible avec Django

PROJET ETUDIANT : Application web avec Django                      


Dans ce projet, j’ai travaillé sur la conception d’une application web avec Django intégrant un système complet d’authentification, de création de contenus et d’interactions sociales.

Ce projet m’a permis de concevoir une architecture backend robuste en Django, en mettant en œuvre les vues basées sur les fonctions (FBV), les formulaires Django, la gestion des permissions et la protection contre les attaques CSRF. J’ai travaillé sur la modélisation des relations entre utilisateurs (abonnements), la gestion des médias (upload et affichage d’images), ainsi que la construction d’un feed combinant plusieurs types de contenus ordonnés chronologiquement.

J’ai également porté une attention à la qualité de l’interface utilisateur : structuration des templates, factorisation des composants, accessibilité conforme aux recommandations WCAG (contrastes, navigation clavier, sémantique HTML) et responsive design.

Enfin, ce projet m’a permis d’approfondir des notions clés telles que la validation des formulaires, la pagination, la personnalisation des messages d’erreur et la séparation claire des responsabilités entre modèles, vues et templates (MVT).

En quelques mots-clés :

Backend / Django

  • Django
  • Python
  • Architecture MVC / MTV
  • Function-Based Views (FBV)
  • Django Forms / ModelForms
  • Validation des formulaires
  • Authentification utilisateur
  • Permissions et sécurité
  • CSRF protection
  • ORM Django
  • Relations One-to-Many / Many-to-Many
  • Pagination
  • Upload et gestion de fichiers médias

Frontend / UI

  • HTML5 sémantique
  • CSS
  • Responsive design
  • Accessibilité web (WCAG)
  • Contrastes et lisibilité
  • UI/UX
  • Templates Django
  • Composants réutilisables

Méthodologie

  • Séparation des responsabilités
  • Clean code
  • Factorisation CSS
  • Gestion des erreurs
  • Debugging
  • Documentation (README)
  • Développement full-stack


V01

Le code source : repository GitHub

Exemple d’exécution



A bientôt ! 😉