Who calls what
Nellalink is a SaaS AI Business Suite. Four layers, two owner/guest surfaces.
- Frontend playbook — pick User App or Front-facing, then Screens or Logic
- Middleware Backend playbook — processors and workers
- Core Backend playbook — persist users and entities
- Project Management playbook — activation, ENV / Metadata Catalog
mermaid
flowchart LR
subgraph fe [Frontends]
UserApp[User_App_React]
FrontFacing[Front_facing_React]
end
subgraph mw [Middleware_Backend_Express]
Files[file-manager]
Orders[nellalink-init]
Mail[email_and_push]
end
subgraph core [Core_Backend_Laravel]
Auth[users_JWT]
Meta[smart-meta-manager]
Notif[notifications]
end
UserApp -->|"auth CRUD business menu items"| core
UserApp -->|"presign upload accept order"| mw
FrontFacing -->|"GET menu by meta-key"| core
FrontFacing -->|"POST checkout"| mw
mw -->|"save or update entities"| coreLayers
| Layer | Repo | Playbook |
|---|---|---|
| User App | frontend-nellalink-user-app | User App screens |
| Front-facing | frontend-nellalink-user-app-front-facing | Front-facing screens |
| Middleware Backend | middleware-nellalink-nodejs | Functions |
| Core Backend | backend-nellalink-laravel | Recommended usage |
Routing preference
- Only Core Backend has the operation → frontend calls Core Backend (register, login, create business in v1).
- Middleware Backend later adds the same job → playbooks switch to Middleware Backend. Core Backend is what Middleware Backend calls.
- One winner. The old URL moves to Do not call (superseded).
Re-read Core Backend explorer and Middleware Backend explorer before editing playbooks. See prompts/iterate-docs.md.
What must not happen
- Do not persist businesses, menus, or orders only in Middleware Mongo. Core Backend is the source of truth.
- Do not add Paystack, S3, or SMTP to Core Backend Laravel.
- Do not document Middey or Samzuga plugins as Nellalink screens.
Folder map (Middleware Backend, Nellalink only)
| Folder | Mount | Frontend calls it? |
|---|---|---|
file-manager | /api/v1/nellalink/file-manager | Yes (User App uploads) |
plugins/nellalink-init | /plugins/nellalink/nellalink-init | Yes (orders, notify) |
Middey / Samzuga / crypto / KYC: other products.