
French web and mobile platform dedicated to domestic animals, built around three functions, adoption (shelter showcase, applications), lost & found (geolocated reports with PostGIS matching) and a certified professional pet boarding directory. Polyglot monorepo architecture with a .NET 10 REST API (modular monolith with bounded contexts), two distinct React 19 SPAs (public showcase and pro back-office), an Expo mobile app, and shared packages (design system, API layer). Geospatial matching in native SQL via PostGIS, JWT authentication with refresh token rotation.
Adoption with shelter showcase and online applications
Geolocated lost/found reporting
Automatic proximity matching (PostGIS)
Directory of certified professional boarding facilities
JWT authentication with refresh token rotation
Interactive mapping (MapLibre GL)
Pro back-office (shelter/boarding/vet consoles)
Expo / React Native mobile app
Designing a multi-actor platform (adopters, shelters, boarding facilities, veterinarians, administrators) covering three distinct business domains, while keeping a maintainable architecture as a solo developer. The technical core relies on performant geospatial matching between lost and found animal reports (proximity, species, description, date), requiring native PostGIS queries. The whole stack had to share a stable API contract across a public showcase, a pro back-office and a mobile app, without code duplication.
Structuring a .NET API into decoupled bounded contexts that communicate only through their public APIs
Automatically matching reports by proximity, species and description through native PostGIS queries
Exposing a stable contract consumed without duplication by the public showcase, pro space and mobile app
Handling adopters, shelters, boarding facilities, vets and admins with JWT and refresh token rotation
Polyglot monorepo architecture with a .NET 10 REST API structured as a modular monolith with bounded contexts (Identity, Adoption, Shelters, LostFound, Pensions...), where each module only accesses others through their public API. Geospatial matching in native SQL (ST_DWithin / ST_Distance on ::geography) via NetTopologySuite. Two React 19 SPAs (public and pro) sharing a common design system and API access layer, plus an Expo mobile app consuming a typed openapi-fetch client generated from the .NET OpenAPI. JWT authentication (short access + long refresh with rotation) and a stable enveloped API contract shared by all clients.
Public adopter showcase
Shelter/boarding/vet back-office
Expo / React Native
JWT auth, users
Pets, applications
Reports, PostGIS matching
Certified pro directory
3
Business domains
Adoption, Lost & Found, Boarding
10
API modules
.NET bounded contexts
3
Clients
Public web, pro, mobile
PostGIS
Matching
Geospatial in native SQL
1
Developer
Solo fullstack project

French platform dedicated to pet adoption and lost & found reunions
Organizing the API into bounded contexts with strict boundaries eases solo maintenance and prepares for a possible service extraction
Delegating proximity computation to PostGIS (ST_DWithin / ST_Distance) delivers native performance far superior to application-level filtering
Pooling the design system and API layer between the public showcase and the pro space avoids duplication while keeping the API as the security boundary
Generating an openapi-fetch client from the .NET OpenAPI keeps the mobile app in sync with the API contract without hand-written types

Complete medical questionnaire and rehabilitation management solution with microservices API, admin dashboard and mobile patient application.

Modern e-commerce backoffice for a fashion brand, with product management, visual outfit (look) creation, customer tracking and an offline demo mode, built with React 19 and Supabase.

Secure, GDPR-compliant identity provider written in Rust, enabling single sign-on via OAuth 2.1 / OpenID Connect and controlled sharing of personal data with third-party applications.