Présentation du projet
Contexte
OC Lettings est une application web développée avec Django pour une entreprise spécialisée dans la location de biens immobiliers.
L’application permet de consulter :
la liste des locations disponibles ;
les informations détaillées de chaque location ;
la liste des profils utilisateurs ;
les informations associées à chaque profil ;
l’interface d’administration Django.
Objectifs du projet
Le projet consiste à améliorer une application Django existante sans modifier son apparence ni ses fonctionnalités principales.
Les objectifs techniques sont les suivants :
remplacer l’architecture monolithique par une architecture modulaire ;
séparer les fonctionnalités dans les applications
lettingsetprofiles;migrer les données existantes avec les migrations Django ;
améliorer la qualité du code avec le linting, les tests et les docstrings ;
atteindre une couverture de tests supérieure à 80 % ;
intégrer Sentry pour la surveillance des erreurs et des logs ;
conteneuriser l’application avec Docker ;
mettre en place un pipeline CI/CD avec GitHub Actions ;
publier l’image de production sur Docker Hub ;
déployer l’application sur Render ;
publier la documentation technique avec Sphinx et Read the Docs.
Architecture fonctionnelle
L’application est organisée autour de trois composants principaux :
oc_lettings_siteContient la configuration générale du projet, la page d’accueil et les pages d’erreur personnalisées.
lettingsGère les adresses et les locations immobilières.
profilesGère les profils associés aux utilisateurs Django.
Application en production
L’application est accessible à l’adresse suivante :