$ cd ./projects/gotyeah-notes/
← cd ../ (retour aux projets)

$ cat gotyeah-notes.md

GotYeah Notes

Clone de Notion auto-hébergé : espaces multi-membres avec rôles et invitations, pages en arborescence, databases en table, kanban, calendrier, galerie et backlog de sprints, éditeur de blocs, connexion par le SSO GotYeah et pilotage depuis Claude via MCP.

date: 18/04/2026

#notion-clone #productivité #collaboratif

stack: Next.js · TypeScript strict · Prisma · SQLite · Tailwind · BlockNote · dnd-kit · SWR · OpenID Connect · MCP · Vitest · Playwright

$ cat README.md

Projet né d’un constat : Notion est génial, mais je veux posséder mes données. Donc je le reconstruis, pas tout, juste ce que j’utilise vraiment. C’est aujourd’hui l’outil dans lequel je suis mes projets : boards, sprints, cahiers de test.

Architecture

  • Next.js App Router, Server Components par défaut, Server Actions pour les mutations.
  • Prisma + SQLite, pour rester portable et auto-hébergeable sans infra lourde, avec des migrations versionnées.
  • Modèle de données explicite, aux invariants documentés.

Connexion et collaboration

  • SSO GotYeah, la connexion passe par le compte unique GotYeah (OpenID Connect), commun à mes autres outils ; l’ancienne connexion par mot de passe est désactivée.
  • Lien de connexion par email, pour les invités externes qui n’ont pas de compte GotYeah.
  • Rôles par espace, administrateur, éditeur et lecteur, appliqués par toutes les routes.
  • Invitations, y compris pour une adresse qui n’a pas encore de compte, acceptées par l’invité depuis une notification.
  • Notifications, cloche dans l’en-tête : invitations, changements de rôle, assignation d’une carte.

Databases et gestion de projet

  • Cinq vues, table, kanban, calendrier, galerie et backlog.
  • Backlog façon Jira, sprints, épics, story points, un seul sprint actif, notes de version générées à la clôture.
  • Propriétés riches, relations entre databases, assignés avec regroupement et filtre « Moi », modèles de cartes à sections fixes, permissions de transition par colonne du kanban.
  • Vie des cartes, commentaires, pièces jointes et historique des modifications champ par champ.
  • Corbeille, pages et cartes restaurables pendant 30 jours.

Édition et interactions

  • Éditeur de blocs BlockNote, sauvegarde automatique, liens internes @page, images collées depuis le presse-papier.
  • Drag-and-drop universel, sidebar, lignes de table, cartes kanban via dnd-kit.
  • Recherche globale (Cmd+K) sur les pages et les cartes.
  • Optimistic updates via SWR, et une interface utilisable sur téléphone.

Pilotage par l’IA et qualité

  • MCP, une cinquantaine d’outils pour lire et écrire pages, databases, cartes, sprints et commentaires depuis Claude, via le hub MCP commun à mes outils ; les écritures de l’IA sont signées par un compte dédié.
  • Tests, unitaires et API avec Vitest, parcours de bout en bout avec Playwright ; un test rouge bloque la CI.

A project born from a realization: Notion is great, but I want to own my data. So I’m rebuilding it, not all of it, just what I actually use. It is now the tool I track my projects in: boards, sprints, test plans.

Architecture

  • Next.js App Router, Server Components by default, Server Actions for mutations.
  • Prisma + SQLite, to stay portable and self-hostable without heavy infra, with versioned migrations.
  • Explicit data model, with documented invariants.

Sign-in and collaboration

  • GotYeah SSO, sign-in goes through the single GotYeah account (OpenID Connect), shared with my other tools; the old password sign-in is turned off.
  • Email sign-in link, for external guests who have no GotYeah account.
  • Workspace roles, admin, editor and viewer, enforced by every route.
  • Invitations, including for an address that has no account yet, accepted by the guest from a notification.
  • Notifications, a bell in the header: invitations, role changes, card assignment.

Databases and project management

  • Five views, table, kanban, calendar, gallery and backlog.
  • Jira-style backlog, sprints, epics, story points, a single active sprint, release notes generated when a sprint closes.
  • Rich properties, relations between databases, assignees with grouping and a “Me” filter, card templates with fixed sections, per-column transition permissions on the kanban.
  • Card life, comments, attachments and a field-by-field change history.
  • Trash, pages and cards can be restored for 30 days.

Editing and interactions

  • BlockNote block editor, autosave, internal @page links, images pasted from the clipboard.
  • Universal drag-and-drop, sidebar, table rows, kanban cards via dnd-kit.
  • Global search (Cmd+K) across pages and cards.
  • Optimistic updates via SWR, and an interface that works on a phone.

AI control and quality

  • MCP, about fifty tools to read and write pages, databases, cards, sprints and comments from Claude, through the MCP hub shared by my tools; AI writes are signed by a dedicated account.
  • Tests, unit and API tests with Vitest, end-to-end journeys with Playwright; a failing test blocks CI.