Skip to main content

Notoma

Write articles for your static gen blog in Notion.

pypi Linters


Install

Notoma is available via Pip or Homebrew:

# Installing with pip, use this if you plan using Notoma as a python library.
pip install notoma

Installing with Homebrew on Mac OS.

brew install nategadzhi/notoma/notoma

What can you do with Notoma

Notoma provides commands to:

  • Convert contents of your Notion Blog database to a bunch of Markdown files.
  • Coming soon: Watch Notion Blog database for updates and regenerate Markdown files on any updates.
  • Coming soon: Create a new Notion database for your Blog with all required fields.

Basic usage example: this command will convert only published posts from a Notion blog database to the ./posts/ directory.

notoma convert --dest ./posts/

This example assumes that you have a .env config file with authentication and blog url parameters in it.

Authenticating in Notion

Notoma uses an internal Notion API, and that, unfortunately, requires you to provide an authentication token token_v2 that you can find in your notion.so cookes.

You can provide token_v2 option to every command line call, or store it in your environment, or .env config file.


Notion database structure

Notoma has very few expectations about how your Notion is structured. Here's a public example database.

Notoma requires that your Notion blog database has the following properties:

  • Published: whether the article is published, or is still a draft
  • Title: Will be used to create a file name for that article's Markdown equivalent file. Won't be used in the article itself.

Notoma tries to parse other properties and add them as front matter into the resulting Markdown articles:

  • Published at will be used as publicataion date for the article, if present.
  • Categories will be used as categories front matter key, so it's expected to be a multiple choice propery.

Metadata

Release files for notoma 0.2.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for notoma 0.2.9
File Size Uploaded
notoma-0.2.9.tar.gz 18.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for notoma 0.2.9
File Interpreter ABI Platform
notoma-0.2.9-py3-none-any.whl Python 3 none any Details

Total release size: 45.8 kB

Release files / notoma-0.2.9.tar.gz

Download URL notoma-0.2.9.tar.gz
Size 18.5 kB
Tags Source
SHA-256 checksum
How to use checksums
6b2a76bc5be963c0f5f2778d37d2b2129ef08cf05cf23cc867338b9dfdbf6965
BLAKE2b-256 checksum
How to use checksums
c51cb400b0955437cf11e41d1b01c5e4f9f4a4240578ea40b73821a67195de60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / notoma-0.2.9-py3-none-any.whl

Download URL notoma-0.2.9-py3-none-any.whl
Size 27.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
93017536d9114b4bbede416199a0303eed2223d3f99b8b066ef00b54f924a534
BLAKE2b-256 checksum
How to use checksums
22fe30eb4599ac59fe7030350ac8c453299f5bf53f41ac0c716eb19e2b9406cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release history Release notifications | RSS feed

This release

0.2.9 This release

2 release files

0.2.8

2 release files

0.2.3

1 release file

0.2.2

2 release files

0.2.1

2 release files

0.2

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page