Want to create interactive content? It’s easy in Genially!

Get started free

DigiCheese – API Backend

Tracy Bachmann

Created on January 19, 2026

Start designing with a free template

Discover more than 1500 professional designs like these:

Urban Illustrated Presentation

Snow Presentation

Corporate Christmas Presentation

Historical Presentation

Scary Eighties Presentation

Memories Presentation

Winter Presentation

Transcript

GR 2 - CR, TC & TB

DigiCheese – API Backend

Conception et développement d’une API backend sécurisée pour la refonte du système d’information de la fromagerie DigiCheese.

Commencer

Index

Introduction

Gestion de projet

Architecture

Authentification

Dockerisation

Seeding

Démo de l'API

Tests

Conclusion

Introduction

Digicheese est une application de gestion de colis de goodies, dans un contexte de programme de fidélité client d'une fromagerie.

Gestion de projet

Méthodologie et organisation

Rôles et outils collaboratifs

GitHub

Architecture de notre API

Architecture backend en couches

Models / Schema

Schema = rôle fonctionnel (contrat d’échange API)Pydantic Model = implémentation technique de ce rôle

Router / Repository / Service

+ info

+ info

+ info

+ info

+ info

Authentification et autorisation

Autorisation et protection des routes

Informations embarquées dans le token

Authentification par JWT

Sécurisation des identités

Chaque route vérifie les droits d'accès et les actions non autorisées sont automatiquement bloquées.

Le token transporte l'identité de l'utilisateur et définit précisément ce qu'il a le droit de faire.

L'utilisateur s'authentifie une seule fois et un token sécurisé lui permet d'accéder à l'API.

Les mots de passe sont protégés dès leur création et aucun secret n'est explosé en base de données.

+ info

+ info

+ info

+ info

Docker

Facilise le Déploiement.

Environnement contrôlé et uniforme.

Isolation des Services.

Accélèration du Développement.

Optimisation des Ressources

+ info

Seed

Le seeding permet de peupler une Base de Données avec de fausses données, pour faciliter le développement et les tests manuels des applications.

+ info

Documentation

Swagger

ReDoc

README

Démo de l'API

Démo API

Tests

Mise en place de tests afin de garantir la fiabilité de l’API et sécuriser les évolutions du code.

Tests et qualité

« Les tests ne servent pas à prouver que le code fonctionne, mais à détecter quand il ne fonctionne plus. »— Kent Beck, co-créateur de l’Extreme Programming

Ce que couvrent nos tests- Authentification (succès / erreurs)- CRUD sur les ressources principales- Codes HTTP et réponses API

OBJECTIFS DES TESTS- Prévenir les régressions- Vérifier les comportements attendus- Sécuriser les évolutions du code

Comment nous avons testé l'API- Tests automatisés avec Pytest- Base de données isolée pour les tests- Mock des dépendances (authentification / rôles)

+ info

+ info

Démo tests

Conclusion & feedback

Ce qui a bien fonctionné

Axes d'amélioration

- Augmenter la couverture de tests- Ajouter une CI/CD- Préparer l’intégration d’un front (V2)

- Organisation claire du projet- API fonctionnelle, sécurisée et testée- Environnement Docker reproductible

hash bcrypt + vérification

restriction par rôle via dépendance FastAPI

endpoint /auth/login + génération token

test de création d'un conditionnement

sub (id) + roles + exp dans le JWT

extrait du dockerfile

Exemple deSeed

isolation de la base de données

Router - Requête HTTP GET

Service – Logique métier

Repository

Schéma + objet pydantic généré

Réponse envoyée au client