Zum Inhalt springen

Onboarding

Wenn du dich zum ersten Mal unter app.engram.page anmeldest, führt dich Engram durch einen kurzen Onboarding-Assistenten, bevor dein Vault sich öffnet. Den Assistenten gibt es, weil Engram vor dem Zugriff auf Vault-Endpunkte die Zustimmung zu den Bedingungen und einen aktiven Abo-Status verlangt.

Der Assistent hat zwei Schritte:

  1. Zustimmung. Akzeptiere die Nutzungsbedingungen und die Datenschutzerklärung. Das wird serverseitig in der Tabelle user_agreements gegen die aktuell gültige Version der Bedingungen protokolliert. Die aktive Version wird dynamisch aus der Tabelle terms_versions aufgelöst (zwischengespeichert durch Engram.Legal.VersionCache), nicht als Konstante zur Kompilierzeit.
  2. Abrechnung. Wähl einen Tarif und schließ den Checkout über Paddle ab (oder wähl Free, das Paddle komplett überspringt). Was jede Stufe abdeckt, steht unter Abrechnung → Tarife.

Sind beide Schritte abgeschlossen, wirst du an den Vault-Browser übergeben.

Das Backend schützt /api/notes, /api/search und /api/folders hinter einem RequireOnboarding-Plug, der prüft:

  • Die neuesten Bedingungen wurden von diesem Nutzer akzeptiert
  • Das Abo ist in Ordnung (oder Self-Host, das diese Prüfung komplett umgeht)

Schlägt eine der Prüfungen fehl, gibt die API 403 zurück, und die Web-App leitet zurück in den Assistenten. So kannst du nicht versehentlich in einen kaputten, halb abgeschlossenen Onboarding-Zustand geraten; die Sperre lässt dich entweder durch oder zeigt dir den Bildschirm, der den fehlenden Schritt klärt.

Bei Self-Host ist die Abrechnung standardmäßig aus (kein PADDLE_API_KEY → config :engram, :billing_enabled ist false). Der Assistent springt über den Schritt der Tarifwahl hinweg. Den Bedingungen stimmst du trotzdem einmal zu.

Du kannst ihn nicht manuell erneut durchlaufen; einmal akzeptiert, bist du durch. Ändern sich die Bedingungen, erhöht Engram serverseitig die Version, und der nächste API-Aufruf gibt 403 zurück; die App zeigt dann nur den Schritt der Zustimmung zu den Bedingungen erneut an. Tarifänderungen passieren auf der Seite Abrechnung, nicht im Assistenten.