Lokaler Modus
Dieselbe App auf einer lokalen Supabase-Datenbank, mit Row-Level Security und vorab angelegten Nutzern.
Der lokale Modus betreibt Portline mit echtem Postgres und Supabase Auth auf Ihrem Rechner. Jede Berechtigungsregel wird von der Datenbank durchgesetzt, nicht nur von der App. Docker muss laufen.
Supabase starten
pnpm db:startDamit startet der lokale Stack auf diesen Ports:
| Dienst | Port |
|---|---|
| API (PostgREST, Auth) | 4161 |
| Postgres | 4162 |
| Studio | 4163 |
Studio erreichen Sie unter http://localhost:4163, wenn Sie sich die Tabellen ansehen möchten.
Schema anlegen und mit Daten befüllen
pnpm db:reset
pnpm db:seeddb:reset wendet die Migrationen von Grund auf an. db:seed befüllt die Datenbank mit demselben Generator, den die Demo verwendet, sodass IDs, Namen und Zahlen mit dem übereinstimmen, was Sie im Demo-Modus sehen.
Vorab angelegte Nutzer
Jeder Nutzer hat das Passwort portline-local.
| Workspace | Rolle | |
|---|---|---|
avery@harborline.example | Harborline Logistics (Growth) | Inhaber |
priya@harborline.example | Harborline Logistics | Admin |
diego@harborline.example | Harborline Logistics | Disponent |
mei@harborline.example | Harborline Logistics | Disponent |
sam@harborline.example | Harborline Logistics | Betrachter |
elif@harborline.example | Harborline Logistics | Betrachter |
owner@starterfreight.example | Starter Freight (Starter) | Inhaber |
Melden Sie sich als Sam an, um zu sehen, was ein Betrachter bekommt: Alles, was der Tarif enthält, ist lesbar, und Schreibvorgänge werden von der App und von der Datenbank abgelehnt, selbst wenn Sie die Datenbank direkt aufrufen. Melden Sie sich im Starter-Workspace an, um Flotte, Lager und Rampen gesperrt zu sehen.
Tarif ändern
Niemand kann den Tarif eines Workspace in der App ändern, auch Inhaber nicht. Das kann nur die Service-Rolle. Das Skript verwendet sie:
pnpm plan:set harborline scale activeDie Argumente sind der Slug des Workspace, der Tarif (starter, growth, scale) und der Abonnementstatus (active, trialing, grace, lapsed). Probieren Sie lapsed aus, um zu sehen, wie der Workspace schreibgeschützt wird. Tarife und Zugriff erklärt, was jeder Status bewirkt.
Beenden
pnpm db:stop