Étude de cas

GestionStock

Commercial and stock management system for products, suppliers, invoices, stock movements, users, and role-based dashboards.

Rôle

Full-stack development, MVC architecture, authentication, persistence, and dashboard workflows.

  • C#
  • ASP.NET Core MVC
  • Entity Framework Core
  • SQLite
  • Cookie Authentication
  • Claims
  • Razor Pages
  • HTML5
  • CSS
  • Bootstrap
  • Tailwind CSS
  • Git
  • GitHub
GestionStock cover screenshot

Contexte

Vue d'ensemble

GestionStock is positioned as a commercial management system where operational data, user roles, invoices, and stock flows need to stay coherent.

Problème

Commercial operations need a structured way to manage products, suppliers, invoices, users, and stock movements without mixing responsibilities or exposing sensitive actions to the wrong roles.

Objectifs

  • Role-based Admin and Employee dashboards with Cookie Authentication and Claims.
  • Product, category, supplier, invoice, and stock movement workflows modeled in MVC.
  • Security practices include password hashing, CSRF protection, and ValidateAntiForgeryToken.

Solution

Ce qui a été construit

Built an ASP.NET Core MVC application with Entity Framework Core persistence, role-based dashboards, secure authentication, invoice workflows, and stock movement tracking.

Pourquoi cette approche

The MVC approach was chosen to keep routing, business workflows, data persistence, and views separated while remaining understandable for a maintainable web application.

Architecture

Une lecture structurée des blocs techniques et des responsabilités prévues dans le projet.

Frontend

Frontend

Razor views with HTML5, CSS, Bootstrap, and Tailwind CSS for role-based dashboards and management screens.

Backend

Backend

ASP.NET Core MVC controllers and services organizing products, categories, suppliers, invoices, users, and stock movements.

Base de données

Base de données

SQLite persistence through Entity Framework Core with domain entities for commercial and stock data.

Authentification

Authentification

Cookie Authentication, Claims, password hashing, role management, and CSRF protection with ValidateAntiForgeryToken.

Intégrations

Intégrations

GitHub repository with README documentation, UML diagram, and demo video.

Défis techniques

  • Keeping invoice details, product stock, and stock movements consistent across workflows.
  • Separating Admin and Employee permissions without duplicating controller logic.
  • Designing a maintainable MVC structure with Entity Framework Core persistence.

Décisions d'ingénierie

Role-based Admin and Employee dashboards with Cookie Authentication and Claims.

Product, category, supplier, invoice, and stock movement workflows modeled in MVC.

Security practices include password hashing, CSRF protection, and ValidateAntiForgeryToken.

Qualité & tests

La qualité est présentée comme une démarche progressive : tests ciblés, lisibilité, analyse statique et décisions documentées.

Approche de test

The project emphasizes secure authentication, CSRF protection, persistence consistency, and clear separation of responsibilities.

Maintenabilité et analyse

  • Architecture lisible et responsabilités séparées

Résultats

  • Demo video and UML diagram are available in the repository README.
  • Repository documents the application structure and commercial management scope.
  • No production usage or business metrics are claimed.

Leçons apprises

Ces apprentissages transforment le projet en preuve de raisonnement technique, pas seulement en liste de fonctionnalités.

  • Transformer "Commercial operations need a structured way to manage products, suppliers, invoices, users, and stock movements without mixing responsibilities or exposing sensitive actions to the wrong roles." en décisions techniques explicites.
  • Présenter les compromis de manière claire pour faciliter la revue par une équipe.
  • Relier l'architecture, les tests et la maintenabilité à un problème concret.