Woofin
Mobile app with a modern Turborepo monorepo setup. Expo + NestJS with shared types and tooling.
Built a mobile-first app using what I consider a best-practice monorepo setup. Turborepo for build orchestration, Expo for the mobile app, NestJS for the API, with shared packages for types, DTOs, validators, and utilities.
The whole stack is TypeScript end-to-end with shared types ensuring the mobile app and API never drift. Biome for linting and formatting (much faster than ESLint + Prettier), Husky for git hooks, GitHub Actions for CI/CD, Docker for the API.
The shared package architecture is the key win. Change a DTO once and both mobile and API update automatically. Type safety from database to UI.
Highlights
- Turborepo monorepo
- End-to-end TypeScript
- Shared types across mobile + API
- Biome for fast linting
Want to discuss a similar project? Get in touch.