Project Overview
La Guilde des Seigneurs is an EIP training project structured as a monorepo
(api/ + front/). The API exposes REST resources for
characters, buildings and users, with
JWT authentication, voter-based access control and
OpenAPI documentation.
The backend is a Symfony 7.4 REST API with MySQL, Doctrine, JWT authentication and Swagger documentation via NelmioApiDocBundle. The front is a consumer Symfony application with Twig, Bootstrap and HttpClient, storing the JWT token in session for full CRUD with registration, login and email verification.
Source code lives in the
symfony-project
repository: two independent Symfony 7.4 apps (api/ and front/). The front
calls the API through the API_URL environment variable.
Main Features
Documented REST API
CRUD for characters and buildings, pagination, filters and Swagger docs via NelmioApiDocBundle.
JWT authentication
Signup, login and JWT token issuance to secure API endpoints.
Consumer front-end
Dedicated Symfony app consuming the remote API with session management and a localized CRUD interface.
Access control
Voter-based authorization on API resources for characters, buildings and users.
Doctrine and fixtures
Doctrine migrations, local JSON fixtures and PHPUnit tests on both applications.
Twig / Bootstrap interface
Full CRUD in Twig and Bootstrap with registration, login and email verification.
Project Gallery
API welcome page
OpenAPI documentation (Swagger)
Consumer app login
Character list (CRUD)