auth plugin: own the public profile route /profile/$accountId (generic identity profile with child-app extension sections)

Aperta
#685 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
15/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript

Direzione di ricerca

Start with the auth plugin (@everything-dev/auth-plugin) and its existing /settings/profile, /login, /onboard and /admin/users routes, then read #661 for the extension-point design this depends on and #684 for the composed-runtime invariant. Work out how a plugin-owned public /profile/$accountId route can take section extensions with ordering and per-section failure isolation. Done means the route renders identity data for any account without a session, and a child app can add a section that renders inside the plugin layout.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Problem

Public account profiles (/profile/$accountId) are a standard identity surface every child app needs (user-nav "Profile" links, leaderboard/campaign signer links), but each child currently hand-rolls the route. In our app that hand-rolled route is also where a composed-runtime invariant surfaced (#684).

Proposal

The auth plugin (@everything-dev/auth-plugin), which already owns /settings/profile, /login, /onboard, and /admin/users, also ships a public /profile/$accountId page:

  • Generic identity profile: NEAR social profile data (name, image), badges, linked auth methods
  • Declared extension point per #661 so child apps add their own sections below the identity fields (e.g. our crosspost posts list), rendered inside the plugin's layout, in configured order, with failure isolation per section
  • Auth gate only where appropriate (public viewing of other accounts should not require a session)
Child impact

Apps delete their local _authenticated/profile/ routes and link to the plugin-owned route; app-specific content moves into the extension sections.

Related
  • #661 (Settings → Profile extension point — same mechanism, different surface)
  • #684 (composed-runtime invariant that surfaced on the hand-rolled profile route)
Lingua principale
TypeScript
Stelle
5
Fork
3
Merge medio
11h 58m
PR unite (30g)
168

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di NEARBuilders/everything-dev

Tutte le issue di NEARBuilders/everything-dev

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.