NaraSystems: Multi-Tenant SaaS Invoicing Platform (In Development)
Youvilab SaaS Product - In Active Development
An ambitious SaaS product in active development designed to provide companies with a fully customizable, secure, and intelligent invoicing/document management system. Built with true multi-tenancy from the ground up, it supports per-tenant branding (custom logos on PDFs), isolated data schemas, role-based access, and an OpenAPI for external integrations. Features auto-generated reference numbers, tax calculations, real-time notifications, and AI-powered insights.
Next.jsTailwind CSSFastAPIPostgreSQLSQLAlchemyJWTOpenAPIMpesa (planned)RedisGrafanaDocker
Impact & Results
- Architected for true multi-tenancy with tenant isolation and dynamic schema handling
- Designed secure OpenAPI with API key authentication and rate limiting
- Built foundation for AI-enhanced reporting and document generation
- Planned integration with Stripe for subscription billing and revenue tracking
Architecture
- Frontend: Next.js App Router with Tailwind CSS and dynamic tenant theming
- Backend: FastAPI with async PostgreSQL, SQLAlchemy, and WebSocket support
- Multi-tenancy: Row-level security + dynamic schema per company
- Authentication: JWT with tenant claims + API key system for integrations
- Document Engine: Auto-calculated totals, reference generation, PDF rendering with tenant logo
- Future: Mpesa billing, Redis caching, Docker/Kubernetes deployment
Challenges
- Designing secure and scalable multi-tenant architecture from day one
- Implementing per-tenant customization (logos, currencies, tax rules)
- Balancing feature richness with clean, maintainable code
- Planning for future billing, monitoring, and observability
Solutions
- Used FastAPI dependencies for tenant context injection
- Structured OpenAPI with proper authentication and rate limiting
- Modular services (document, auth, billing) for long-term maintainability
- Comprehensive audit logging and error handling built-in
Key Takeaways
Advanced multi-tenant patterns and data isolation strategies
Building production-ready OpenAPI specifications
Designing SaaS systems for scalability, security, and monetization
End-to-end ownership of a commercial-grade product
Project Gallery
Browse through project illustrations