opensource graph view of your notion pages, inspired by Obsidian.
- a simple flask server (see the gif below)
- background parsing and auto updating (parses every X minutes automatically)
- retrying logic (it hasn't crashed into an unrecoverable state for me yet)
- partial updates (only parse pages that were edited since last parse)
Clone this repo.
git clone git@github.com:dominiquegarmier/notion-graph
cd notion-graph
Install dependencies.
virtualenv .venv -ppython3.10
source .venv/bin/activate
pip install -r requirements.txt
- set the environment variable
NOTION_KEY
with your notion api key that has read access to some pages (see notion docs).
you can now run the following command to start notion-graph
python graph.py
This will automatically discover any page shared with your notion integration. Subsequently it will create a task queue to query every discovered page. The initial parse of your document might take a while as notions api is limited to three requests per second. You will notice that the programm will create a new folder data/
which contains the parsed pages and links. Subsequent parses will only refresh pages that have be edited since the last parse.
The graph view will be served on localhost:8080
. Make sure to hit refresh when the parsing is done.
Install dev-dependencies
pip install -r requirements-dev.txt
Install pre-commit hooks.
pre-commit install