Aller à l'article
Aniq-UI

NorthstackLe tableau de bord de l'espace de travail

Le tableau de bord de l'espace de travail

Ce que fait le tableau de bord multi-tenant : se connecter et s'inscrire, créer un espace de travail, les pages de la barre latérale et qui les voit, la vue d'ensemble, la recherche, le journal d'activité avec son export CSV, et les paramètres de l'espace de travail.

Pour le pack Full Stack

Pages

Chaque page existe en anglais sous /en et en arabe sous /ar. Le tableau de bord s'ouvre sur /en/dashboard après la connexion sur /en/auth/signin. La barre latérale a deux colonnes : l'espace de travail, pour les membres d'un espace, et l'administration de la plateforme, pour le personnel de la plateforme. Chaque ligne n'apparaît que si le compte connecté détient sa permission dans l'espace de travail où il travaille.

Élément de la barre latéraleCheminPermissionRôle
Vue d'ensemble/en/dashboardaucune (chaque membre)Les projets, l'usage du mois, l'activité des projets de la semaine, la checklist de lancement, les projets demandant de l'attention et l'activité récente.
Projets/en/dashboard/projectsprojects.readChaque projet avec son statut, son responsable, sa progression et son échéance ; le tableau, l'activité et les fichiers de chaque projet.
Équipe/en/dashboard/teamworkspace.readLes membres et les invitations en attente, avec l'invitation, les changements de rôle, le retrait et le transfert de propriété.
Rôles/en/dashboard/rolesworkspace.readCe que peut faire chaque rôle de l'espace de travail. Seul le propriétaire le modifie ; tous les autres le voient en lecture seule.
Facturation/en/dashboard/billingbilling.readLa formule, l'usage, les factures et l'e-mail de facturation.
Paramètres/en/dashboard/settingsworkspace.readLes détails de l'espace de travail, votre profil et votre mot de passe, les notifications et les clés d'API.
Assistant IA/en/dashboard/ai-assistantai.readRépond aux questions sur cet espace de travail et propose des tâches que vous appliquez.
  • Activity (/en/dashboard/activity, audit.read) s'ouvre depuis les liens View all activity de la vue d'ensemble et depuis la cloche. Archived projects (/en/dashboard/projects/deleted, projects.read) s'ouvre depuis la liste des projets.
  • Le menu du compte au bas de la barre latérale contient My profile et Preferences (Settings, sur ses onglets Profile et Notifications) et Sign out. En dessous, Documentation ouvre le /docs du site (NEXT_PUBLIC_WEBSITE_URL), et Platform admin s'affiche pour les comptes qui détiennent une permission de plateforme.
  • La barre supérieure contient le fil d'Ariane de la page, la recherche (Ctrl K, ou Cmd K sur un Mac), le changement de langue, le changement de thème et la cloche.
  • Une page ouverte par son adresse sans la permission affiche Access required : « Your role in this workspace does not include this page. » L'API refuse les mêmes requêtes quoi qu'affiche l'écran.
  • Un compte sans espace de travail est envoyé vers l'onboarding, ou vers l'administration de la plateforme s'il fait partie du personnel de la plateforme.

Se connecter et s'inscrire

  • Tout le monde se connecte sur la même page, /en/auth/signin, avec un e-mail et un mot de passe : membres d'un espace de travail comme personnel de la plateforme. Les comptes du seed sont listés dans le guide d'installation.
  • Remember me est coché par défaut et garde la session 30 jours ; décochez-le et la session se termine au bout de 12 heures. Quand l'API refuse une session, le tableau de bord se déconnecte et ouvre la page de connexion.
  • Un mauvais e-mail et un mauvais mot de passe affichent le même message, « That email and password do not match an account. » Après RATE_LIMIT_LOGIN connexions échouées (10 dans .env.example) depuis une même adresse en 15 minutes, l'API refuse chaque essai depuis celle-ci, le bon mot de passe compris, jusqu'à ce que le plus ancien échec ait 15 minutes, et le formulaire affiche « Too many failed sign-in attempts. Wait 15 minutes, then try again. »
  • Create an account (/en/auth/signup) demande un nom complet, un e-mail professionnel, un mot de passe d'au moins 8 caractères et les Terms. Le nouveau compte est connecté et va vers l'onboarding. Une adresse peut lancer 10 inscriptions par heure ; au-delà, et tant que la plateforme a New sign-ups désactivé, le formulaire affiche la phrase de l'API elle-même.
  • Forgot password? (/en/auth/forgot-password) répond de la même façon que l'e-mail ait ou non un compte, et envoie un lien vers /en/auth/reset-password qui ne fonctionne qu'une fois et expire au bout d'une heure. Sans SMTP_HOST, le message, lien compris, est écrit dans le journal de l'API.
  • La page de connexion renvoie vers les pages Privacy et Terms du site (NEXT_PUBLIC_WEBSITE_URL).
  • Sur les données d'exemple intégrées, sans API, n'importe quel mot de passe permet de se connecter : voir Données d'exemple.

Créer un espace de travail

/en/onboarding crée un espace de travail en trois étapes. Un nouveau compte arrive ici après l'inscription, et tout compte la rouvre depuis Create workspace dans le sélecteur d'espace de travail.

ÉtapeCe qu'elle demande
Espace de travailLe nom de l'espace de travail (2 à 60 caractères), son URL (3 lettres minuscules, chiffres et tirets ou plus, vérifiée pendant la saisie, avec une URL libre suggérée quand elle est prise) et une région : Europe, North America ou Asia Pacific.
ÉquipeDes invitations facultatives : un e-mail et un rôle (Admin, Member ou Billing) par personne, sous une ligne qui indique l'essai : « New workspaces start on a Starter trial of 14 days, with 3 seats. » Passez cette étape pour inviter des gens plus tard depuis Team.
PrêteUn récapitulatif du nom, de l'adresse, de la région, de la formule (« Starter, trial of 14 days ») et des invitations, puis Create workspace.

Le créateur devient le propriétaire de l'espace de travail. Un nouvel espace démarre sur Starter, marqué comme essai pour la durée du paramètre Trial length de la plateforme (14 jours dans le seed, lu depuis le GET /api/public-settings public de l'API, si bien que l'onboarding indique la durée avant que l'espace existe), avec la matrice de rôles par défaut, et chaque invitation est envoyée par e-mail (ou écrite dans le journal de l'API). Billing affiche la date de fin de l'essai. Quand elle passe sans formule payante, l'espace de travail passe en retard de paiement et le délai de grâce commence, comme après un paiement échoué.

Tant que le personnel de la plateforme a désactivé New sign-ups, l'API refuse à la fois l'inscription et un nouvel espace de travail, et le formulaire, ou l'étape de récapitulatif de l'onboarding, affiche « New sign-ups are closed on this platform right now. »

Changer d'espace de travail

  • Le bloc en haut de la barre latérale affiche le nom et la formule de l'espace de travail. Son menu liste chaque espace auquel appartient le compte, avec Create workspace en dessous. Le propriétaire du seed, owner@northstack.example, possède Forma Studio et est admin de Monogram.
  • En choisir un fait disparaître tout ce qui était affiché pour l'espace précédent et recharge les pages du nouveau, si bien qu'aucune ligne d'un espace n'est jamais affichée sous un autre. Le choix est conservé sur le compte, et la connexion suivante ouvre le même espace de travail.
  • Le rôle est propre à chaque espace de travail : la même personne peut être propriétaire de l'un et membre d'un autre, et la barre latérale suit le rôle dans l'espace choisi.

La vue d'ensemble

PanneauCe qu'elle afficheAffiché à
ProjetsCombien de projets sont ouverts et terminés.projects.read
L'usage du moisLes requêtes d'API et les places par rapport aux limites de la formule.chaque membre
Activité des projetsLes événements de tâches par jour sur les sept derniers jours, avec le jour le plus chargé.projects.read
Checklist de lancementDomaine configuré, équipe invitée, facturation connectée et clés de production ajoutées, chacun lu depuis l'état réel de l'espace de travail. Une étape ouverte ne renvoie vers l'endroit où elle se fait que pour un rôle autorisé à la faire.chaque membre
Projets demandant de l'attentionJusqu'à trois projets ouverts dont l'échéance tombe dans la période, le plus proche d'abord.projects.read
Activité récenteLes six derniers événements de la période. Un rôle qui ne lit que la facturation la voit comme Billing activity, avec les seuls événements de facturation.projects.read, audit.read ou billing.read

La Reporting period (Last 7 days, Last 30 days ou Last 90 days, 30 par défaut) restreint les projets demandant de l'attention et l'activité récente ; le graphique hebdomadaire garde ses propres sept jours. La période est gardée dans l'adresse (?period=7d). New project s'affiche pour les membres qui détiennent projects.write.

La recherche et la cloche

  • La recherche (Ctrl K ou Cmd K) trouve des pages et, dès deux caractères saisis, les projets, tâches et membres de l'espace de travail, cinq de chaque. Les projets et les tâches n'apparaissent que pour les membres qui détiennent projects.read. Dans l'administration de la plateforme, elle cherche des organisations.
  • La cloche liste les huit derniers événements de l'espace de travail avec le nombre de ceux non lus depuis la dernière pression de Mark all read par le lecteur, et s'actualise chaque minute. Elle montre les mêmes événements que l'activité récente de la vue d'ensemble : tous avec projects.read ou audit.read, les événements de facturation pour un rôle qui ne lit que la facturation, et aucun sinon. View all activity ouvre le journal d'activité pour les membres qui détiennent audit.read.

Le journal d'activité

Chaque changement dans un espace de travail écrit un événement : projets, tâches, fichiers, invitations, membres, rôles, paramètres, clés d'API, facturation et suggestions de l'assistant appliquées. /en/dashboard/activity les liste du plus récent au plus ancien, dix par page, pour les membres qui détiennent audit.read (le propriétaire et les admins dans le seed).

  • Filtres : une recherche, Action (l'un des groupes ci-dessus), Person, et les dates From et To. Reset les efface. Chaque filtre est gardé dans l'adresse.
  • Export CSV télécharge chaque événement correspondant aux filtres sous <workspace-address>-activity.csv, avec les colonnes date, actor, action, subject et details. Une valeur qui commence par =, +, - ou @ est écrite avec un guillemet initial pour qu'un tableur ne l'exécute pas.

Paramètres

Settings (/en/dashboard/settings) a cinq onglets, et l'onglet ouvert est gardé dans l'adresse (?tab=profile). Chaque membre l'ouvre ; ce qu'il peut modifier dépend de son rôle.

OngletCe qu'il contientQui le modifie
GénéralLes détails de l'espace de travail : le nom, l'URL, la langue (anglais ou arabe) et le fuseau horaire, avec les interrupteurs de notification, les dernières clés d'API pour keys.manage, et la Danger zone pour le propriétaire.workspace.update (propriétaires et admins dans le seed) ; lecture seule pour les autres
ProfilVotre prénom, votre nom et votre adresse e-mail.chaque compte, pour lui-même
SécuritéVotre mot de passe : l'actuel, puis un nouveau d'au moins 8 caractères avec une majuscule, une minuscule et un chiffre. Un appareil déjà connecté garde sa session jusqu'à sa fin (12 heures, ou 30 jours avec Remember me).chaque compte, pour lui-même
NotificationsDeux interrupteurs pour tout l'espace de travail : Email notifications et Weekly digest.workspace.update
Clés d'APILes clés de l'espace de travail, créées et révoquées ici. L'onglet ne s'affiche que pour keys.manage.keys.manage (propriétaires et admins dans le seed)
  • Email notifications active ou désactive les e-mails de facturation : un paiement échoué, un essai terminé, un changement de formule payé et un changement planifié appliqué au renouvellement, envoyés au propriétaire, aux membres de facturation et à l'adresse de facturation de l'espace de travail. Les invitations, les réinitialisations de mot de passe et les reçus de licence sont toujours envoyés.
  • Weekly digest envoie à chaque membre actif un résumé de la semaine écoulée, le lundi à partir de 08:00 UTC, une fois par espace de travail et par semaine. Les chiffres des projets et des tâches ne vont qu'aux rôles avec projects.read, et le nombre d'activités suit ce que le rôle peut voir. Le premier résumé d'un espace de travail couvre sa première semaine complète, et sur une nouvelle installation le premier passage marque seulement la semaine en cours et n'envoie rien : les premiers résumés partent donc le lundi suivant.
  • Chaque e-mail est écrit dans la langue propre du destinataire, ou dans celle de l'espace de travail quand il n'en a choisi aucune. La langue des écrans est toujours celle de l'adresse. Sans paramètres SMTP, l'API écrit plutôt chaque e-mail dans son journal.
  • Delete workspace, dans la Danger zone, est réservé au propriétaire : saisissez le nom de l'espace de travail et votre mot de passe. L'API annule alors son abonnement Stripe, s'il en a un, sans crédit pour les jours restants, et marque l'espace comme supprimé (une suppression logique) : chaque membre perd l'accès, ses clés d'API cessent de fonctionner, il disparaît de chaque liste et sélecteur, ses lignes restent dans la base et son adresse reste prise. Si Stripe est injoignable, rien n'est supprimé, et un avis invite à réessayer dans quelques minutes.
  • Le nom de la marque, le logo et les couleurs ne se règlent pas ici : ils viennent des fichiers de marque du tableau de bord.

Langue et thème

La barre supérieure bascule entre l'anglais et l'arabe (les pages arabes s'affichent de droite à gauche) et entre le thème clair et le thème sombre. Le thème suit le réglage de l'ordinateur tant qu'il n'a pas été changé, et le choix est gardé dans ce navigateur.

Comment le code du tableau de bord s'articule

Inclus avec votre achat. Connectez-vous pour le lire, ou ouvrez-le dans votre téléchargement.

La structure du code, et la marche à suivre pour ajouter une page.

Bloqué sur une étape ?

Trouvez une solution avant de tout recommencer.

Dépannage

Préférences des Cookies

Nous utilisons des cookies pour améliorer votre expérience de navigation, analyser le trafic du site et personnaliser le contenu. En cliquant sur "Accepter Tout", vous consentez à notre utilisation des cookies pour l'analyse et la publicité personnalisée.