First off, thank you for your interest in contributing to BridgeWise 🚀 This project is actively evolving, and we welcome high-quality contributions that improve stability, scalability, and developer experience.
This repository follows a monorepo architecture:
apps/
api/ # Backend (NestJS)
web/ # Frontend (React)
packages/
ui/ # Shared UI components
utils/ # Shared utilities
types/ # Shared TypeScript types
- ❌ Do NOT mix frontend and backend code
- ❌ No
.tsxfiles inside backend (apps/api) - ❌ No backend logic inside frontend
-
Every PR must compile successfully
-
Run before submitting:
pnpm install pnpm build
- ❌ Do NOT introduce unresolved imports
- ❌ Avoid invalid aliases like
@/...unless properly configured - ✅ Use relative paths or configured aliases only
- ❌ Do NOT submit partially implemented modules
- ✅ If a feature is incomplete, isolate it or mark clearly
pnpm install# Backend
pnpm --filter @bridgewise/api start:dev
# Frontend
pnpm --filter web devpnpm buildpnpm add <package> --filter web
pnpm add <package> --filter @bridgewise/apipackages/<your-package>/- Follow ESLint and Prettier rules
- Keep code clean and readable
- Use strict TypeScript practices
- Avoid
anyunless absolutely necessary
- Code compiles without errors
- No TypeScript errors
- No unused imports or variables
- Scope matches the issue
- Clear description of changes
- Reference to related issue (if any)
- Screenshots (for UI changes)
PRs will be rejected if they:
- Break the build
- Introduce architectural violations
- Contain incomplete or experimental code
- Lack proper description or context
We welcome contributions in:
- Architecture improvements
- Bug fixes
- Performance optimizations
- Developer experience (DX)
- Documentation
Before starting work:
- Check if an issue already exists
- Comment on the issue to get assigned
- Follow the issue scope strictly
This project prioritizes:
- Stability over speed
- Clean architecture over quick fixes
- Long-term scalability
High-quality contributions are highly valued. If you're unsure about anything, open a discussion or ask for clarification before implementing.
Let’s build something solid together.