Skip to content
VellumOpen Vellum

A database where every row is a page.

Point a database at a notebook, a tag or a formula, and its pages become rows: sort, filter, group, and see them as a table, a board or a calendar. The values live in each page’s own properties, so everything stays plain Markdown.

A Vellum database of books as a table, inside the page that defines it.
A Vellum database of books as a table, inside the page that defines it.

Rows are pages

A database is a small block in any page that says where its rows come from: a notebook (with its sub-notebooks), a tag, or a formula over properties. Each row is a page; its values are that page’s front matter properties, which Obsidian and other Markdown tools read too. Edit a cell and the page changes; edit the page and the table follows.

```vellum-db
name: Reading list
source:
  notebook: Books
properties:
  - { key: author, type: text }
  - { key: status, type: select, options: [To read, Reading, Done] }
  - { key: pages, type: number }
views:
  - { name: Table, type: table }
  - { name: Board, type: board, group: status }
```

Many views of the same pages

Views: Table, Board, Calendar, Gallery, List. Each sorts, filters and groups on its own. Property types: Text, Number, Select, Multi-select, Date, Checkbox, Link, Relation, Rollup, Formula.

Formulas work out values from other properties (no code runs: a small, safe formula language); relations link rows to pages in another database, and rollups count, sum or list across them. A short block shows any database, live, inside another page.

Code, the assistant and spreadsheets

In the app