Welcome to the MonOCR Platform. As a polyglot monorepo, contributions must follow a specific workflow to maintain platform parity and architectural integrity.
The project uses a monorepo structure where each directory in apps/ and services/ is an independent application managed by a central orchestration layer at the root.
Do not modify native resource files (Android XML, iOS Strings) directly.
- Update the central translation source.
- Run
pnpm translatefrom the root to update all platforms. - Commit the changes across all affected platforms.
- Run
pnpm dev:allto start the frontend and backend services. - Use
pnpm installat the root only.
- Pragmatism Over Dogmatism: We prefer simple, maintainable solutions over abstract over-engineering.
- Independent Engines: Ensure that changes to one app do not break the "Independent" nature of others.
- Staff-Grade Logic: Every new feature must include proper error handling, structured logging, and defensive input validation.
We follow Conventional Commits:
feat(web): Adding a new web feature.fix(android): Fixing an Android bug.docs(adr): Adding a new Architecture Decision Record.refactor(shared): Improving the locale sync script.