Skip to content

Blocks Reference

Blocks are the fundamental content units in Ascend pages. Every paragraph, heading, image, table, and embedded database is an independent block you can move, duplicate, nest, or delete. This page documents every block type the editor supports.


Adding a block

MethodHow
Slash menuType / in any empty block, then search by name or keyword
Markdown shortcutType the shortcut + space (e.g. # for H1, - for bullet)
Block toolbarHover a block, click the + handle on the left
Enter keyPress Enter at the end of a block to add a new paragraph below
Smart pastePaste text containing lists, headings, code, or links — Ascend auto-detects types

Block operations

ActionHow
ReorderHover → grab the ⋮⋮ drag handle → drag to a new position
Move up / downCmd/Ctrl + Shift + ↑ / ↓
DuplicateHover → click the duplicate button, or Cmd/Ctrl + D
DeleteHover → click the trash icon, or Backspace on an empty block
ConvertOpen the block menu and pick a different type — text content is preserved when compatible
UndoCmd/Ctrl + Z

Categories at a glance

CategoryBlocks
BasicText, Heading 1/2/3, Bulleted list, Numbered list, To-do, Toggle, Quote, Callout, Divider, Code
MediaImage, File, Video, Audio, Bookmark, Chart
AdvancedTable, Columns, Equation, Table of Contents
EmbedLink to page, Link to record, Database (embed or new)
AI & ProductivityAI Summary, Reminder

Plus two blocks created automatically by the editor: Child page and Child database (when you create a nested page or database from inside another page).


Basic blocks

Text (paragraph)

The default block. Press Enter from any block to start a new paragraph. Supports inline formatting: bold, italic, underline, strikethrough, inline code, links, and @-mentions of pages and records.

  • Slash: /text
  • Shortcut: just start typing

Heading 1

Largest section heading — use once per page for the top-level title (the page title field above the canvas usually replaces this).

  • Slash: /h1
  • Markdown: # + space

Heading 2

Medium section heading. The default for major sections.

  • Slash: /h2
  • Markdown: ## + space

Heading 3

Small heading for sub-sections.

  • Slash: /h3
  • Markdown: ### + space

Bulleted list

Unordered list. Press Enter to add another item, Tab to indent, Shift + Tab to outdent. Press Enter on an empty item to exit the list.

  • Slash: /bullet
  • Markdown: - + space

Numbered list

Ordered list. Auto-renumbers when you reorder or insert items.

  • Slash: /numbered
  • Markdown: 1. + space

To-do

Checkbox list for tasks and action items. Each item has its own checked state. Use Tab / Shift + Tab to nest sub-tasks.

  • Slash: /todo
  • Markdown: [] + space

Toggle

Collapsible block that hides nested content until clicked. The toggle can contain any other block type as children — paragraphs, lists, code, even other toggles. Great for FAQs, optional detail, and long-form notes.

  • Slash: /toggle
  • Tip: click the chevron to expand or collapse; nested children persist their state per session

Quote

Indented block with a left bar, for citations, testimonials, or pull quotes.

  • Slash: /quote
  • Markdown: > + space

Callout

Highlighted card for tips, warnings, and notes. Supports an icon (any emoji) and a background color. Use it sparingly to draw attention to the things that matter.

  • Slash: /callout

Divider

A thin horizontal rule for visual separation between sections.

  • Slash: /divider
  • Markdown: --- on an empty line

Code

Monospace block with syntax highlighting. Set the language (e.g. typescript, python, bash, sql) from the dropdown to enable colour highlighting. Includes a one-click Copy button.

  • Slash: /code
  • Markdown: ``` on an empty line
typescript
function greet(name: string): string {
  return `Hello, ${name}!`;
}

Media blocks

Image

Upload JPG, PNG, GIF, or WebP, or paste an image URL. Images are auto-resized to fit the page width and stored in your workspace's Azure blob storage. Add an optional caption below the image. Click the image to view full size.

  • Slash: /image
  • Also: drag-and-drop image files directly onto the canvas

File

Upload any file as an attachment. Shows the filename, size, and file type with a download button. Use this for PDFs, spreadsheets, contracts, and any document you want pinned to a page.

  • Slash: /file

Video

Embed a video by URL (YouTube, Vimeo, Loom, direct MP4) or upload a video file. The empty state has both a paste URL input and a file upload button. Click into the URL field to type or paste.

  • Slash: /video

Audio

Embed audio by URL or upload an MP3/WAV/M4A file. Plays inline with native browser controls. Supports an optional caption.

  • Slash: /audio

Bookmark

Saves a link as a rich preview card with the page title, description, and thumbnail. Better than a bare link when you want the destination to stand out.

  • Slash: /bookmark

Chart

Visualises data from a database in this workspace. Choose a database, pick a chart type (bar, line, pie), pick the X axis property, and pick whether the Y axis is a count of records or the sum of a numeric property. Updates automatically when the underlying database changes.


Advanced blocks

Table

A simple inline table — not a database, just rows and columns of cells. Configurable:

  • Header row and header column toggles
  • Freeze header row when scrolling
  • Pin one or more columns to the left
  • Resize columns by dragging the column edge
  • Per-cell alignment and bold/italic
  • Border styles (table outline, all cells, row lines only, column lines only)
  • Striped rows and hover highlight
  • Custom header background colour

Use a table for static data. For sortable, filterable, queryable data use a Database block instead.

  • Slash: /table

Columns

Splits the canvas into 2–5 vertical columns. Each column is its own mini-canvas that can hold any block type — text, images, lists, callouts, even nested columns. Drag blocks between columns to rearrange.

  • Slash: /2columns or /3columns (4 and 5 column layouts available from the block menu)

Equation

Renders a mathematical equation written in LaTeX. Use this for formulas, proofs, and any maths-heavy notes. Click to edit the LaTeX source.

  • Slash: /equation
  • Example: \sum_{i=1}^{n} i = \frac{n(n+1)}{2}

Table of Contents

Auto-generated outline of the headings (H1, H2, H3) on the current page. Updates live as you add or rename headings. Click any entry to jump to that heading.

  • Slash: /toc

Embed blocks

Inserts a link to another page in the workspace as a block (not just an inline link). Shows the page icon and title and stays in sync if the page is renamed.

  • Slash: /link to page

Inserts a link to a specific row in a database. Shows the row's title, the database it belongs to, and the row's autonumber. Stays in sync if the row is updated or moved.

Database (embed)

Embeds an existing database directly into the page. The full database UI is rendered inline — you can view it as a table, board, calendar, or any saved view, sort, filter, and edit rows without leaving the page. Choose which view to show via the embed config.

Database (new)

Creates a brand-new database as a child of the current page and embeds it inline. Use this when you want a database scoped to a single page (e.g. a project page with its own task list).

  • Slash: /databaseNew Database
  • Tip: start from a database template instead of a blank database for a faster setup

AI & productivity blocks

AI Summary

Generates a summary of the current page using your workspace's AI model and inserts it as a callout block. The block content is regular text after generation — you can edit it freely. Counts against your AI token budget.

  • Slash: /ai summary

Reminder

Schedules a reminder for the current page. Pick a date and time and an optional message. When the reminder fires you'll get a notification and the block animates on the page until acknowledged. Reminders are stored in the page_reminders table and survive page reloads.

  • Slash: /reminder

Auto-created blocks

These block types are not in the slash menu — they're created automatically by the editor when you take a related action.

Child page

Created when you make a sub-page from inside another page. Renders a clickable link with the child page's icon and title. Deleting the block does not delete the page; trash the page itself if you want it gone.

Child database

Created when you choose New Database from the slash menu (above). Owned by the parent page — deleting the parent page sends the child database to trash too.


Inline formatting

Every text block (paragraph, headings, lists, todo, toggle, quote, callout) supports the same inline formatting:

FormatShortcutMarkdown
BoldCmd/Ctrl + B**text**
ItalicCmd/Ctrl + I*text*
UnderlineCmd/Ctrl + U__text__
Strikethrough~~text~~
Inline code`text`
LinkSelect → link icon, or Cmd/Ctrl + K
Mention page or recordType @

Keyboard shortcuts

ActionShortcut
New blockEnter
Delete empty blockBackspace
Move block upCmd/Ctrl + Shift + ↑
Move block downCmd/Ctrl + Shift + ↓
Duplicate blockCmd/Ctrl + D
Open slash menu/
Open link editorCmd/Ctrl + K
Indent (lists / toggle)Tab
Outdent (lists / toggle)Shift + Tab
UndoCmd/Ctrl + Z
RedoCmd/Ctrl + Shift + Z

Full shortcuts list →


Choosing the right block

ContentBest block
Body textText
Section titleHeading 2
Unordered itemsBulleted list
Step-by-step instructionsNumbered list
Action items / tasksTo-do
Hidden detail or FAQToggle
Important note or warningCallout
Code or terminal commandsCode
Section breakDivider
Static rows and columns of dataTable
Sortable, filterable structured dataDatabase (embed or new)
Side-by-side layoutColumns
Math formulaEquation
Page outlineTable of Contents
External webpage as a cardBookmark
Visualise database dataChart
Schedule a follow-upReminder