$ cat project.txt
BILLCOLLE
A multi-role billing platform built as a monorepo. Separate Next.js frontends for owner, issuer, customer and admin share a Ruby on Rails GraphQL backend.
$ ls -la project/
A billing platform using Yarn Workspaces: each role gets an isolated Next.js app over a shared Rails GraphQL backend with generated, consistent schemas.
The Challenge
Multi-tenant billing needs a distinct experience per role while keeping schemas consistent and preventing data leaks between stakeholders.
Our Solution
A Yarn Workspaces monorepo isolates four Next.js frontends sharing one Rails service; GraphQL code generation keeps client schemas in sync, with multi-tenant isolation in the backend.
Key Features
Technical Architecture
Frontend
- framework: Next.js
- stateManagement: Apollo Client
- styling: Tailwind / MUI
- testing: Jest
Backend
- runtime: Ruby
- framework: Rails 8 (GraphQL)
- database: MySQL
- caching: Redis
Deployment
- hosting: Docker
- ci_cd: GitHub Actions
- monitoring: N/A
Results & Impact
Four role-specific frontends over one backend
Monorepo reduces duplication across clients
GraphQL codegen keeps schemas consistent
Isolated workspaces streamline parallel development
Gallery
Billing dashboard
Multi-role admin