Skip to content

Commit 0ef9760

Browse files
doc: document supported blocks, rich text, property types
1 parent e23954b commit 0ef9760

File tree

1 file changed

+76
-28
lines changed

1 file changed

+76
-28
lines changed

README.md

Lines changed: 76 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -18,32 +18,80 @@ Success! 🚀
1818

1919
### Supported Blocks
2020

21-
| Block Type | Supported | Notes |
22-
| ----------------- | -------------- | ----------------------------------------------------- |
23-
| Text | ✅ Yes | |
24-
| Heading | ✅ Yes | |
25-
| Image | ✅ Yes | |
26-
| Image Caption | ✅ Yes | |
27-
| Bulleted List | ✅ Yes | |
28-
| Numbered List | ✅ Yes | |
29-
| Quote | ✅ Yes | |
30-
| Callout | ✅ Yes | |
31-
| Toggle | ❌ Missing | |
32-
| Checkbox | ? | |
33-
| Column | ❌ Missing | |
34-
| Embed | ❌ Missing | |
35-
| Video | ❌ Missing | |
36-
| Audio | ❌ Missing | |
37-
| Divider | ✅ Yes | |
38-
| Link | ✅ Yes | |
39-
| Code | ✅ Yes | |
40-
| Web Bookmark | ✅ Yes | |
41-
| Web Bookmark | ❌ Missing | |
42-
| Toggle List | ❌ Missing | |
43-
| Page Links | ❌ Missing | |
44-
| Databases | ✅ Yes | including child pages, inline tables planned |
45-
| Child Pages | ❌ not planned | avoid, they don't mix well with clear site navigation |
46-
| Table Of Contents | ? | |
21+
The following [Notion API block object types](https://developers.notion.com/reference/block) are supported:
22+
23+
| Block Type | Supported | Notes |
24+
| ----------------- | ------------- | -------------------------------------------------------------------- |
25+
| Paragraph | ✅ Yes | |
26+
| Heading1-3 | ✅ Yes | |
27+
| Callout | ✅ Yes | |
28+
| Quote | ✅ Yes | |
29+
| Bulleted List | ✅ Yes | |
30+
| Numbered List | ✅ Yes | |
31+
| To do | ✅ Yes | |
32+
| Toggle | ❌ Missing | |
33+
| Code | ✅ Yes | |
34+
| Child Pages | ❌ not planned | avoid, they don't mix well with clear site navigation |
35+
| Child Databases | ✅ Yes | renders as table + including child pages, inline-only tables planned |
36+
| Embed | ❌ Missing | unclear, might be undesireable for static sites |
37+
| Image | ✅ (Yes) | captions not supported yet |
38+
| Video | ❌ Missing | |
39+
| File | ❌ Missing | |
40+
| PDF | ❌ Missing | |
41+
| Bookmark | ❌ Missing | |
42+
| Equation | ❌ Missing | |
43+
| Divider | ✅ Yes | |
44+
| Table Of Contents | ❌ not planned | static site generators have their own ToC implementations |
45+
| Breadcrumb | ❌ not planned | static site generators have their own nav implementations |
46+
47+
Support for other block types can be considered once they are available on the official Notion API.
48+
49+
### Supported Rich Text Formatting
50+
51+
The following [Notion API rich text types](https://developers.notion.com/reference/rich-text) are supported
52+
53+
| Rich Text Type | Supported | Notes |
54+
| -------------- | ----------- | ------------------------------------------------ |
55+
| Text | ✅ Yes | |
56+
| Mention | ✅ partially | Page mentions only, mentioned pages are included |
57+
| Equation | ❌ Missing | |
58+
59+
The following annotations (and any combination thereof) are supported:
60+
61+
| Annotation | Supported | Notes |
62+
| ------------- | ------------- | ------------------------- |
63+
| bold | ✅ Yes | |
64+
| italic | ✅ Yes | |
65+
| strikethrough | ✅ Yes | |
66+
| underline | ✅ Yes | |
67+
| code | ✅ Yes | |
68+
| color | ❌ not planned | not available in markdown |
69+
70+
### Supported Page Property Types
71+
72+
The following [Notion API page property types](https://developers.notion.com/reference/page#property-value-object) are supported
73+
74+
| Propety type | Supported | Notes |
75+
| ---------------- | --------- | ----------------------------- |
76+
| Rich text | ✅ Yes | rendered as markdown string |
77+
| Number | ✅ Yes | |
78+
| Select | ✅ Yes | rendered as name |
79+
| Multi Select | ✅ Yes | rendered as array of names |
80+
| Date | ✅ Yes | rendered as string |
81+
| Formula | ❌ missing | |
82+
| Relation | ✅ Yes | rendered as array of page ids |
83+
| Rollup | ❌ missing | |
84+
| Title | ✅ Yes | used as page title |
85+
| People | ❌ missing | |
86+
| Files | ❌ missing | |
87+
| Checkbox | ❌ missing | |
88+
| Url | ✅ Yes | rendered as string |
89+
| Email | ✅ Yes | rendered as string |
90+
| Phone Number | ✅ Yes | rendered as string |
91+
| Created time | ✅ Yes | rendered as string |
92+
| Created by | ✅ Yes | rendered as name |
93+
| Last edited time | ✅ Yes | rendered as string |
94+
| Last edited by | ✅ Yes | rendered as name |
4795

4896
## Usage
4997

@@ -106,8 +154,8 @@ main();
106154
There are quite a few alternatives out there already, so why did we build `notion-markdown-cms`?
107155
Below table, albeit subjective, tries to answer this.
108156

109-
| Project | Notion API | Language | Rendering Engine | Output looks like |
110-
| ------------------------------------------------------------------------ | ------------- | ---------- | ------------------- | -------------------- |
157+
| Project | Notion API | Language | Rendering Engine | Output looks like |
158+
| ------------------------------------------------------------------------ | ------------ | ---------- | ------------------- | -------------------- |
111159
| [Nortion Markdown CMS](https://github.com/meshcloud/notion-markdown-cms) | ✅ official | TypeScript | Markdown + JS Index | Site generator theme |
112160
| [Notion2GitHub](https://github.com/narkdown/notion2github) | ⚠️ unofficial | Python | Markdown | Site generator theme |
113161
| [notion-cms](https://github.com/n6g7/notion-cms) | ⚠️ unofficial | TypeScript | React | Notion App |

0 commit comments

Comments
 (0)