The Fovea project is a digital platform designed to modernize the customer experience in Pandora stores. Built by a team of four during our studies at Epitech, it aimed to let jewelers scan a piece of jewelry to instantly retrieve its reference, while offering modern, smooth stock management on a tablet.
The idea: reduce waiting times in store and make browsing the catalog as simple as a scan. A great opportunity to combine AI, a solid backend and frontend ergonomics!
Platform concept
Fovea fits a concrete context: Pandora stores, where looking up references could be long and tedious, especially during busy periods. The platform brings several solutions:
- Smart jewelry scanning: thanks to image-recognition AI, a simple item scan identifies the reference and displays its product sheet.
- Digital catalog: quick browsing of items, detailed sheets and management of new collections.
- Stock management: viewing stock levels, inventory history and jewelry movements.
- Ecological optimization: a goal of reducing paper use for in-store inventory and catalogs.
The solution runs on in-store tablets, connected to a local server.
Key features
- AI image recognition: instant identification of references for scanned jewelry.
- Dynamic catalog: quick display of product sheets and assisted search powered by Meilisearch.
- Stock management:
- Real-time tracking of quantities
- Stock movement history
- Integration of new collections
- Modern, responsive interface: built with NextJS and Shadcn for a smooth user experience.
- Robust infrastructure:
- Backend in Express.js and TypeScript
- MySQL database with Prisma
- Containerization via Docker for simplified deployment.
My role in the project
On this project, I served as Tech Lead and took charge of all backend development, while supporting my teammates on their respective parts. Concretely, I:
- Designed and developed the Express.js API, in TypeScript, to handle every interaction between the tablet and the database.
- Set up the MySQL database, optimized to handle up to several thousand product references.
- Used Prisma to ease queries and maintenance of the database schema.
- Dockerized the entire backend, to ensure reliable and reproducible deployment in stores.
- Contributed to the frontend, notably on some interfaces in NextJS and Shadcn, to optimize navigation and the integration of backend data.
- Coordinated the team on technical architecture and technology choices.
Challenges
- Handling data volume: with more than 7,000 references to manipulate, we had to design a performant and efficient database.
- Optimizing AI scan speed, so that image recognition wouldn't slow down the in-store experience.
- Securing access to the local server while keeping it simple to use on a tablet.
- Maintaining data consistency between the AI scan, the database and the user interface.
Areas for improvement
Several developments could enrich the project:
- Improve AI analysis speed, notably by optimizing model size and inference times.
- Integrate voice to complete the user experience (voice search in the catalog, for example).
- Connect the platform to Pandora's e-commerce system to synchronize stock in real time between store and website.
- Add smart notifications (low-stock alerts, restocking suggestions).
- Develop an offline mode, to let the tablet keep working even during an internal network outage.
What I took away
Fovea was an excellent opportunity to work on a complete project, combining AI, backend and UX. Building the backend architecture from scratch and ensuring smooth communication between all components was particularly formative. This project let me consolidate my skills in TypeScript, Express.js, and deployment via Docker, while touching on modern frontend with NextJS.
It's also a project I was passionate about, because it answers a real business problem: making life easier for salespeople and customers in a demanding retail world. A great technical and human adventure!

Completed on
Sunday 30 June 2024
Time spent
200 hours