Approche
Architecture backend
Conception d’une application structurée avec une architecture modulaire proche du modèle MVC, permettant de séparer clairement la logique métier, les routes et l’accès aux données.
Gestion des utilisateurs
Implémentation d’un système complet comprenant :
- Inscription et connexion
- Gestion des rôles
- Gestion du profil utilisateur
- Authentification sécurisée
Sécurité applicative
Mise en place de plusieurs mécanismes de sécurité :
- Hachage des mots de passe avec bcrypt
- Sessions sécurisées avec UUID
- Cookies HTTPOnly
- Routes protégées selon les rôles
- Rate limiting pour limiter les abus
Fonctionnalités principales
- Création de posts
- Système de commentaires
- Likes / dislikes
- Ajout d’images
- Signalement de contenu
- Système de modération (admin / modérateur)
Résultats
Application web fonctionnelle permettant :
- La gestion d’une communauté d’utilisateurs
- La publication et la modération de contenu
- La gestion sécurisée des comptes et des sessions
Compétences mises en pratique
Backend
Développement backend en Go
Base de données
Gestion d’une base de données relationnelle MySQL
Sécurité
Implémentation de mécanismes de sécurité applicative
Déploiement
Conteneurisation et déploiement avec Docker