Lucy Roh174 downloadsAn Extended Base view with column wrap, top-aligned cells, and transparent background.
Notion-style views for Obsidian Bases — Table, List, and Board. Clean chrome, colored value pills, inline cell editing, nested collapsible groups, and a Notion-style page panel for editing a note without leaving the view.
By Lucy Roh.

Requires Obsidian 1.10.2+ with the Bases core plugin enabled.
Extended Base is a fork of GoodBases by Umberto Francesco Carolini (MIT). v1.0.1 adds the List and Board views, nested groups, column resizing/renaming, and per-column options on top of GoodBases 0.5.3. See Credits.
Pick one from the base's view selector. All three share the same pill colors, select editor, inline editing, and page panel.
The full database grid.
Rows: 50 ▾ control in the footer caps how
many rows render (10 / 20 / 50 / All).
A compact one-line-per-note layout: the note title on the left, its
properties on the right. Same grouping, pills, and inline editing as the
table, minus the grid. The Row count limit view option decides how many
rows to draw (0 or all for no limit).
A Kanban board built from the base's grouping: one column per group, one card per note.
Group keys containing / render as stacked, indented pills in the column
header — so Project/Alpha shows both levels.
Cards are not drag-and-drop yet; change a note's group from the card's own pill cell or the page panel.
Group by a property whose values use / as a separator and Extended Base
builds a real tree instead of a flat list. Work/Client/Alpha becomes
three nested levels, each with its own collapsible header and a count of
everything beneath it. Click ▼ / ▶ on any header to fold it.
Pills throughout the views show only the last path segment (Work/Client
renders as Client), so nested tags stay readable — the underlying value
is unchanged.
Click + New (in the footer, in a board column, or the base toolbar's New button) to create and edit a note in a centered Notion-style panel, without leaving the view. To open existing notes there too, set the Open notes in view option to Page panel — clicking a note title then opens the panel instead of a tab (Ctrl/Cmd-click still opens a tab):


Colored pills — list properties (tags, multitext) render as pills using Notion's 9-color palette, with accurate light- and dark-mode values. Colors are assigned by a deterministic hash, so a value keeps its color forever — unless you choose your own.
Per-value color picker — click the colored square on the right of
any row in the pill select menu and pick from Notion's palette, or
Default for no color. Your choice is saved and applies everywhere
that value appears. (You can also set colors in bulk with the Pinned
pill colors view option — value=color, e.g. Done=green.)

Select editor — pill cells open a select-style menu listing every value already used for that property, with a checkmark on the selected ones, search, and create-on-Enter.

Inline editing — click a cell to edit text and numbers in a floating input sized to the cell; long text opens a textarea (Enter saves, Shift+Enter adds a newline). Checkboxes toggle in place.
Markdown in cells — text and multitext values render as Markdown, so links and formatting work inside a cell.
Path-stripped values — values that look like paths display their last segment, while URLs, wiki links, and comma-separated lists are left alone.
Grouping — respects the Bases group by configuration, with the
nesting and collapsing described above.
| Option | Table | List | Board |
|---|---|---|---|
| Wrap all content | ✅ | ||
| Show vertical lines | ✅ | ||
| Row count limit | ✅ (footer) | ✅ | |
| Open notes in | ✅ | ✅ | ✅ |
| Group by property | ✅ | ||
| Hidden groups | ✅ | ||
| Properties to show as colored pills | ✅ | ✅ | ✅ |
| Pinned pill colors | ✅ | ✅ | ✅ |
Column widths, renamed headers, per-column wrapping, and per-column color toggles are set directly on the table (drag / double-click / right-click) and persist in the view config.
Notes on editing:
note.*) are editable; file.* and
formula.* columns are read-only by nature.tags pills are intentionally read-only for now — tags have special
semantics and deserve a careful write path.Extended Base is not in the community plugin browser. Install it manually:
main.js,
manifest.json, and styles.css from a release.VaultRoot/.obsidian/plugins/extended-base/.The blue Notion-style New button and icon-only Sort / Filter / Properties / Search are an optional CSS snippet — the toolbar is core Obsidian UI, outside the plugin's views, so the plugin doesn't style it:
snippets/extended-base-notion-toolbar.css
into VaultRoot/.obsidian/snippets/.Once enabled, the snippet restyles every Bases toolbar, not just Extended Base views.
npm install
npm run dev # esbuild watch mode with inline sourcemaps
npm run build # type-check + production bundle → main.js
Point the repo (or a symlink) at
VaultRoot/.obsidian/plugins/extended-base/ and reload the
plugin in Obsidian after each build.
Source layout:
src/main.ts — registers the three Bases views.src/view/notion-table-view.ts, notion-list-view.ts,
notion-board-view.ts — one file per view.src/view/note-modal.ts — the page panel; select-editor.ts — the pill
select menu.src/lib/ — pill detection, the Notion color palette, group-tree
building, frontmatter and value helpers.src/view-options.ts — the per-view settings shown in the Bases toolbar./-separated group values become a
collapsible tree with per-level counts.tags safely
(currently read-only).Housekeeping only — no functional change to the plugin.
snippets/extended-base-notion-toolbar.css (it was still named after the
upstream project). Only the filename and its header comment changed — no
CSS selector depended on the old name, so a copy you already enabled in
.obsidian/snippets/ keeps working untouched.Housekeeping only — no functional change to the plugin.
docs/ landing page was still the upstream GoodBases site
verbatim — its title, brand, hero copy, support section, GitHub links and
OG tags all pointed at the original author, and pages.yml publishes that
folder. It is now the Extended Base site: the three views, the 1.0.x
changelog, and correct install instructions. The stale roadmap section was
dropped rather than reattributed, since those were upstream's plans.LICENSE and this README.[good-bases] build log prefix, and the plugin
path in .env.example (the deploy code already used the manifest id, so
only the comment was wrong).manifest.json described settings
this plugin does not have; it now describes the three views.setCssProps custom
properties, group toggles use setText instead of innerHTML, and the
property-type lookup moved into a typed helper
(src/lib/property-types.ts) shared by all three views.styles.css and the toolbar snippet no longer use
!important — overrides win by selector specificity instead.border-bottom rather than
text-decoration-* longhands, which Obsidian only partially supports.No functional changes beyond the color-picker fix.
New — two more views.
New — nested, collapsible groups. Group values containing / build a
real tree: indented headers per level, counts that include descendants,
and a ▼ / ▶ toggle on every header. Shared by the table and list views.
New — column controls in the table.
Rows: N ▾ footer control limits how many rows render.Also in this release:
/
segment; URLs, wiki links, and comma-separated lists are preserved.pointerdown instead of
mousedown.--text-normal for their label so they stay
legible in both themes.LICENSE alongside the fork's.🎉 Extended Base — the fork's first release, on top of GoodBases
0.5.3. A rename and re-attribution only: plugin id extended-base, the
Extended Base name, and updated author metadata. The table view kept the
bases view-type id, which later versions preserve for compatibility.
Feature work landed in 1.0.1.
setCssStyles/setCssProps APIs,
modal lifecycle methods match Obsidian's types, and styles.css no
longer uses !important (overrides win by selector specificity
instead). No functional changes.📄 New — Notion-style page panel. + New now opens the freshly created note centered in a panel, like Notion's page peek: an editable title, the note's properties — pills open the same select editor as the table, checkboxes toggle, text and numbers edit inline — and the body rendered as formatted Markdown (click to edit the source, click away to render it again; changes autosave as you type).
Also in this release:
:has() selector, avoiding the performance cost of broad selector
invalidation. Once enabled, the snippet now restyles every Bases
toolbar.snippets/extended-base-notion-toolbar.css) rather than shipping
in the plugin, so the plugin no longer restyles Obsidian's core UI.🎨 New — per-value color picker. Click the colored square next to any value in the pill select menu and pick a color from Notion's palette. Your choice is saved (persisted to the Pinned pill colors option) and applies everywhere that value appears.
Also in this release:
Extended Base is a fork of GoodBases by Umberto Francesco Carolini, released under the MIT license. The Notion-style table, colored pills, select editor, and page panel are their work; this fork adds the List and Board views, nested groups, and the column controls listed under 1.0.1.
If GoodBases is useful to you, you can support the original author with a coffee ☕.
This plugin is not affiliated with, endorsed by, or sponsored by Notion Labs, Inc. "Notion" is a trademark of Notion Labs, Inc.; it is used here only to describe the visual style the views emulate.
MIT — Copyright (c) 2026 Umberto Francesco Carolini (the original GoodBases work) and Lucy Roh (Extended Base modifications).