La Guilde des Seigneurs - Symfony Monorepo

EIP project built with Symfony 7.4 as a monorepo: a JWT-secured REST API and a consumer web application managing characters, buildings and users.

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.

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.

Gallery

Tech

PHP · Symfony · MySQL · Doctrine · JWT · Bootstrap · Twig · OpenAPI · RESTful API · HttpClient · PHPUnit · Git · GitHub · MVC