Last edited 2 min ago
🚀

NotionKit MVP

👤 Marcel Karas 📅 Created 12 May 2026 🏷️ Design system

A calm UI framework in the Notion idiom – as web components, without a build step. This page is the living preview: sidebar, page tree, callouts, todos, toggles and database views in one shell.

💡
Core idea: NotionKit supplies the look and the shell; the editor is mounted through <nk-block-host> (BlockNote, say), and the data comes from your own API. Three layers, cleanly separated.

✅ Next steps

Sketch the component scope
Build the preview with light/dark
Prioritise the MVP scope
Define the data model for tree & database

🗃️ Project database

▦ Table 4 ▤ Board
📄Name Status 👤Owner 📅Due Progress
+ New page

🧩 More building blocks

Everything else a Notion-like system needs – calm, drop-in elements. Try them out.

ℹ️ This page is a component preview – every element follows the same design tokens.Open palette
⚠️ The “Project overview” database has 2 overdue entries.View
All changes have been synced.

What does integrating it look like?
One script tag is enough – no bundler, no framework lock-in:
html<nk-app> <nk-sidebar slot="sidebar">…</nk-sidebar> <nk-page title="Project overview" icon="📊"> <nk-database source="/api/projekte"></nk-database> </nk-page> </nk-app>
What is deliberately not part of the kit?
The text editor itself. With <nk-block-host> only the optical shell – BlockNote or Novel is mounted as the editor. That keeps the kit lean and the editor replaceable.

✍️ Editor surface

From here on you are typing into real TipTap, mounted into an nk-block-host – with no editor CSS of its own. Hover a block for + / ⠿, drag it, select text, or type /.

This is no longer a preview: this paragraph is editable. The title above, the callout, the todos and the database are NotionKit markup – and this block is the same look, only alive.

  • Mount the editor into a block host
  • Move a block with ⠿
  • Pick a new block with /
NotionKit supplies the look and the shell, the editor supplies the behaviour. Three layers, cleanly separated.

My profile

MK

Details

Display name
How you appear in the workspace.
E-Mail
Used for invitations and notifications.
About me
A short description for your team.

Appearance

Appearance
Light, dark, or follow the system setting.
Palette
The example palettes from theme-override.css – one line of --nk-accent is enough.
Language

Comfort

Compact view
Reduces spacing in the sidebar and lists.
Reduce motion
Less motion for calmer work.
Text size
100 %

Notifications

By email

Push

Push notifications
Straight in the browser when shared pages see activity.
Mentions only
Everything else lands quietly in the inbox.

AI assistant

AI replies enabled
Mona may read page content and suggest replies.

Model

Mona Standard Recommended
A balanced model for everyday work. Fast, calm, dependable.
Mona Deep
More depth of thought for complex analysis and long documents. Answers more slowly.
Custom model API
Connect your own API key (OpenAI, Anthropic, Azure).

Reply style

API key
Only needed for a custom model. Stays stored locally.

Workspace settings

Workspace name
Domain
Public pages appear under this address.
Public home page
Visitors may view shared pages without signing in.
⚠️ Danger zone
Delete workspace
Irreversibly removes all pages, databases and members.

Members

MK
Marcel Karas
marcel@monahilft.de
SL
Sara Lindt
sara@monahilft.de
TW
Tom Weber
tom@agentur-x.de
Mona KI
Virtual co-founder
🔍 esc