Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mindeng/notion-async
A notion sync tool, in `async` style.
https://github.com/mindeng/notion-async
notion notion-api notion-cli notion-client notion-sdk rust
Last synced: 25 days ago
JSON representation
A notion sync tool, in `async` style.
- Host: GitHub
- URL: https://github.com/mindeng/notion-async
- Owner: mindeng
- License: mit
- Created: 2024-09-04T09:38:02.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-09-22T14:14:43.000Z (about 1 month ago)
- Last Synced: 2024-09-29T19:01:55.314Z (about 1 month ago)
- Topics: notion, notion-api, notion-cli, notion-client, notion-sdk, rust
- Language: Rust
- Homepage:
- Size: 223 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# notion-async
A notion sync tool, in `async` style.
![screenshot](images/screenshot.png)
## Usage
Just set the following environment variables (`.env` file is also supported):
- `NOTION_TOKEN`: Your notion integration token, can get from: [notion
integrations](https://www.notion.so/my-integrations)
- `NOTION_ROOT_ID`: The root notion page/database ID which you want to sync.
The tool will sync all children pages/databases/comments into a sqlite db
file, *recursively*. You can get the ID from any notion page/database link.
Then run `cargo run sync`, everything under the `NOTION_ROOT_ID` will be
synchronized into `notion.db` (can be changed by command line argument).You can also set the token & id in the command line arguments, please refer to
the help message.```
Usage: notion-async [OPTIONS]Commands:
sync Sync all pages/databases/comments into db, recursively
help Print this message or the help of the given subcommand(s)Options:
--token Notion integration token, can get from: https://www.notion.so/my-integrations. If it's not set, will read from env var NOTION_TOKEN
--db Sqlite database file path [default: notion.db]
-h, --help Print help
-V, --version Print version
```## Roadmap
The features will be implemented one by one in order.
- [x] Basic notion async API (`notion-async-api` crate)
- [x] Sync into sqlite database
- [ ] Download files/images in notion pages
- [ ] Simple query
- [ ] Full-Text search
- [ ] Export as markdown files
- [ ] Dockerize