Multi-tenant SaaS frontend for residents and community admins.

Repohalort-platform-web
StackNext.js 16 · React 19 · TanStack Query · Eden Treaty · Zustand · RHF + Zod · @halort/web
Localhttp://localhost:3001
Productionhttps://app.halort.com · {slug}.halort.com

Architecture rule

Zero business logic in the UI — all domain operations go through the platform API via Eden Treaty. UI packages come from the design system.

Route groups

GroupExamples
(public)/, /berita, /agenda, /campaign, /kontak
(auth)/login, /register, /forgot-password
(resident)/dashboard, /iuran, /surat, /kampanye, …
(admin)/admin/*
Pasar/pasar, /preloved, /jualan, /jasa, /pasar/iklan

See Concepts/Roles and Portals · Concepts/Pasar GP2 · Auth · Multi-tenancy.

Tenancy

Host-based tenant + X-Halort-Tenant-Slug. Local fallback: NEXT_PUBLIC_TENANT_SLUG. Requires a running API.

Deploy

GHCR → Argo CD. Wildcard Ingress for tenants; reserved hosts (docs, design, …) are separate Ingress objects.

Features & testing