Back to projectsIn testing
Yma — Plataforma mobile
Native app, admin panel and API — three fronts, one product
A product made of a React Native app, a web admin panel and a Fastify API. I work on the app’s design and structure, bringing features born for desktop onto the phone.
Technologies
- React Native
- Expo
- TypeScript
- React Navigation
- Fastify
- Prisma
- PostgreSQL
- Zod
- Cloudinary
- React Three Fiber
- Vitest
Context
The product existed as a web application designed for a large monitor. Moving it to the phone was not a matter of shrinking the screen: it was deciding what survives when the usable area drops to an eighth.
Challenge
- Information density designed for desktop, incompatible with one-handed use.
- Long flows that had to be broken up on mobile without losing context.
- Heavy media (image and video) travelling over a mobile network.
Solution
- Navigation restructured into tabs, with bottom sheets for secondary actions instead of new screens.
- On-device image processing before upload, cutting payload weight.
- Schema-validated API contract on both ends, preventing drift between app and server.
Outcome
- Application in testing, with an Android build distributed.
- Transition between web and mobile with no relearning required from the user.
Highlights
- Native Expo app with tab navigation, bottom sheets, image capture and editing, haptics and Android builds.
- Push notifications delivered through Expo’s push service.
- Fastify API with schema-driven contract validation, Swagger documentation and JWT authentication.
- Admin panel with data tables, in-browser media processing and 3D visualisation.