Vipkurum: the boundary lives in the schema, set at domain level
Seven education institutions sit under one roof, each entering from its own domain under its own name, one system turning underneath. The line is not in the interface: student, parent, payment and invoice records stay inside the institution, never surfacing in a neighbour's panel. Timetables, classes, branches and exams sit in one data model, reached only as far as a role's permission goes. An institution defines its own assessment type, so a new criterion needs no code change. One Laravel core carries the React panel and the React Native (Expo) mobile side; MySQL and MongoDB hold records, Redis the cache.
Read the case study →