ForgeOpenPlatform
nl

OpenPlatform

Wat OpenPlatform is: één portaal voor al je webtoepassingen

OpenPlatform · openplatform@5 openplatformportalappsoverview

OpenPlatform is een kant-en-klaar portaal voor je webtoepassingen. Je mensen melden zich één keer aan, zien de toepassingen die ze mogen gebruiken en openen ze vanaf één plek; de beheerders beheren gebruikers, groepen, rechten en meldingen vanuit één scherm. Het is open source onder de MIT-licentie, geschreven met Total.js 5 en PostgreSQL, en de toepassing is de repository totaljs/openplatform (versie 5).

Deze sectie beschrijft OpenPlatform (revisie 5a54a85 van de repository).

Wat het je geeft

  • Eén aanmelding voor veel toepassingen. Een toepassing kan een van je eigen Total.js-apps zijn of elke webtoepassing: OpenPlatform opent haar met een ondertekend token en de toepassing vraagt OpenPlatform wie de gebruiker is (zie hoe een app verbinding maakt).
  • Gebruikers, groepen en rechten. Een gebruiker hoort bij groepen; een groep bepaalt welke toepassingen de gebruiker ziet en welke rechtenwaarden elke toepassing ontvangt (zie groepen en rechten).
  • Meldingen. Toepassingen sturen meldingen naar hun gebruikers via een klein HTTP-endpoint; het portaal toont ze en kan een samenvatting van de ongelezen per e-mail sturen (zie meldingen en de openbare API).
  • Sessies die de gebruiker beheert. Elke gebruiker kan zijn eigen sessies zien en verwijderen en zijn wachtwoord wijzigen.
  • Een instellingenscherm voor de beheerders (/setup/): gebruikers, groepen, toepassingen, instellingen, feedback en een dashboard met de bezoekers.

Hoe het project is georganiseerd

OpenPlatform is een Total.js-toepassing met drie plugins en een paar controllers:

OnderdeelWat het doetBron
plugin loginde aanmeldpagina, POST /api/login/ en POST /api/reset/plugins/login/
plugin portalhet portaal voor aangemelde gebruikers (GET /*)plugins/portal/
plugin setuphet beheerscherm en zijn API onder /setup/plugins/setup/
account-API/api/-acties voor de sessie, het account, de apps, de meldingen en de sessies van de gebruikercontrollers/api.js, schemas/account.js
app-protocolGET /verify/, POST /notify/, GET /session/ voor de toepassingencontrollers/verify.js
openbare APIGET /users/, uploads van afbeeldingen en de SOCKET /sync/ van meerdere instantiescontrollers/api.js, controllers/socket.js

De rest van het onderdeel: installeren, een toepassing registreren, instellingen en database. De officiële documentatie staat op docs.totaljs.com/openplatform, en de native client die Total.js 5 meelevert voor het Open Platform-protocol staat in het recept OPENCLIENT.