Porta — Implementation Details
Project: Porta Type: Multi-tenant OIDC Provider (API / SaaS) Tech Stack: TypeScript, Koa, node-oidc-provider, PostgreSQL, Redis Last Updated: 2026-04-25
Purpose
This section contains the technical architecture documentation for Porta — system design, data models, infrastructure, architecture decisions, and developer guides. It is written for developers who maintain, extend, or contribute to the Porta codebase.
For product documentation (how to use, configure, and administer Porta), see the main documentation.
Contents
- Architecture — System overview, data model, API design, infrastructure, security
- Architecture Decisions — Record of all significant design choices with rationale
- Developer Guides — Setup, development workflow, deployment procedures
- Reference — Configuration options, external integrations
Quick Navigation
| Section | What You'll Find |
|---|---|
| System Overview | High-level architecture, component diagram, request flow |
| Data Model | Domain entities, relationships, database schema |
| API Design | REST conventions, authentication, pagination, error handling |
| Infrastructure | Docker, deployment, CI/CD, monitoring |
| Security | Threat model, crypto standards, multi-tenant isolation |
| Decision Log | Architecture Decision Records (ADRs) |
| Getting Started | Developer setup, prerequisites, first run |
| Development Workflow | Coding patterns, testing, module conventions |
| Deployment | Production deployment, Docker, environment config |
| Configuration Reference | All environment variables, config options, defaults |
| Integrations | PostgreSQL, Redis, SMTP, node-oidc-provider |