Ce este OpenPlatform: un portal pentru toate aplicațiile tale web
OpenPlatform este un portal gata de rulat pentru aplicațiile tale web. Oamenii tăi se autentifică o dată, văd aplicațiile pe care au voie să le folosească și le deschid dintr-un singur loc; administratorii gestionează utilizatori, grupuri, permisiuni și notificări de pe un singur ecran. Este open source sub licența MIT, scris cu Total.js 5 și PostgreSQL, iar aplicația este depozitul totaljs/openplatform (versiunea 5).
Această secțiune descrie OpenPlatform (revizia 5a54a85 a depozitului).
Ce îți oferă
- O singură autentificare pentru multe aplicații. O aplicație poate fi una dintre aplicațiile tale Total.js sau orice aplicație web: OpenPlatform o deschide cu un token semnat, iar aplicația întreabă OpenPlatform cine este utilizatorul (vezi cum se conectează o aplicație).
- Utilizatori, grupuri și permisiuni. Un utilizator aparține unor grupuri; un grup decide ce aplicații vede utilizatorul și ce valori de permisiune primește fiecare aplicație (vezi grupuri și permisiuni).
- Notificări. Aplicațiile trimit notificări utilizatorilor lor printr-un mic endpoint HTTP; portalul le afișează și poate trimite prin e-mail un rezumat al celor necitite (vezi notificări și API-ul public).
- Sesiuni controlate de utilizator. Fiecare utilizator își poate vedea și elimina propriile sesiuni și își poate schimba parola.
- Un ecran de configurare pentru administratori (
/setup/): utilizatori, grupuri, aplicații, setări, feedback și un tablou de bord cu vizitatorii.
Cum este organizat proiectul
OpenPlatform este o aplicație Total.js cu trei pluginuri și câteva controlere:
| Partea | Ce face | Sursa |
|---|---|---|
pluginul login | pagina de autentificare, POST /api/login/ și POST /api/reset/ | plugins/login/ |
pluginul portal | portalul pentru utilizatorii autentificați (GET /*) | plugins/portal/ |
pluginul setup | ecranul de administrare și API-ul lui sub /setup/ | plugins/setup/ |
| API-ul contului | acțiuni /api/ pentru sesiune, cont, aplicații, notificări și sesiunile utilizatorului | controllers/api.js, schemas/account.js |
| protocolul aplicațiilor | GET /verify/, POST /notify/, GET /session/ pentru aplicații | controllers/verify.js |
| API-ul public | GET /users/, încărcări de imagini și SOCKET /sync/ al mai multor instanțe | controllers/api.js, controllers/socket.js |
Restul secțiunii: instalarea, înregistrarea unei aplicații, setări și baza de date. Documentația oficială se află la docs.totaljs.com/openplatform, iar clientul nativ pe care Total.js 5 îl include pentru protocolul Open Platform este în rețeta OPENCLIENT.