# Ce este OpenPlatform: un portal pentru toate aplicațiile tale web

> OpenPlatform este portalul enterprise Total.js care rulează, integrează și gestionează mai multe aplicații web în spatele unei singure autentificări, cu utilizatori, grupuri, permisiuni și notificări.

Framework: openplatform
Product: OpenPlatform (openplatform@5)
Language: ro
Content-SHA256: f3113fd4004cf937ba2286c2653df6be2a32287d6c3e007532706c259b54d7a6
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: 
Review: not-recorded

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](https://github.com/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](/en/openplatform/how-an-app-connects/)).
- **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](/en/openplatform/groups-and-permissions/)).
- **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](/en/openplatform/notifications-and-public-api/)).
- **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](/en/openplatform/install-openplatform/), [înregistrarea unei aplicații](/en/openplatform/register-an-app/), [setări și baza de date](/en/openplatform/settings-and-database/). Documentația oficială se află la [docs.totaljs.com/openplatform](https://docs.totaljs.com/openplatform/), iar clientul nativ pe care Total.js 5 îl include pentru protocolul Open Platform este în rețeta [OPENCLIENT](/en/total5/openclient-protocol/).
