Notion Toggles Loader

AnkiWeb addon 1940767534

Loads Notion toggle-list blocks into a specified Anki deck, turning titles into fronts, content into backs, parsing #tags and supporting cloze, manual or background sync.
AI-generated summary; may contain mistakes.

card-creationimportsync-integrationtaggingcloze

Open on AnkiWeb GitHub Ask about alternatives

AnkiWeb

Rating
26 (πŸ‘ 22 Β· πŸ‘Ž 4)
Updated
2023-04-26
Anki versions
2.1.61~
Description language
en

Maintenance

abandoned

  • Last update or commit was 842 days before the snapshot (2024-06-11).
  • The repository has 1 test files.
  • The repository has 2 GitHub Actions workflows.

GitHub

Repository
9dogs/notion-anki-sync Β· more by 9dogs
Stars
⭐ 65 · forks 7 · open issues 12
Last commit
2023-04-26
License
GPL-3.0
Languages
Python, CSS, HTML, Dockerfile, Makefile
Tests
1

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
2.1.432.1.61+2023-04-26
History across monthly snapshots

Loading…

Similar addons

Notion Toggles to Anki

Imports Notion toggles as Anki questions via the official Notion API, supporting multiple pages, decks, recursion, rich content, GUI configuration, and background syncing.

card-creationimportsync-integration

Rating 15 πŸ‘ 15 Β· πŸ‘Ž 0 Anki 25.02~ Updated 2025-03-13

README

AnkiπŸ’—Notion addon

It's an Anki addon that loads toggle lists from Notion as notes to a specified deck.

Supported versions License: GPL v3 Codestyle: Black

How it works

Short demo and configuration how-to: YouTube link

TLDR

  • You provide a set of Notion page ids to export
  • Every "toggle list" block from Notion will be converted to an Anki note
  • Title of the toggle block will become the front side and its content β€” the backside
  • The line starting with #tags will be parsed as tags
  • Ignore toggles by putting symbol ❕ in front of a toggle title (type ":!" in Notion and select the white one)

Clozes can be added via code blocks in toggle titles. Backside will be ignored (apart from tags).

Synchronization can work in the background or can be triggered manually from the Notion submenu in the Tools section. Note that background sync does not remove any notes; if you want to remove the obsolete notes, then trigger Load and remove obsolete from the submenu.

Requirements

Notion API token

To get Notion API token log in to Notion via a browser (assuming Chrome here), then press Ctrl+Shift+I to open Developer Tools, go to the "Application" tab and find token_v2 under Cookie on the left.

Notion page ids

To get Notion page id open up the page in a browser and look at the address bar. 32 chars of gibberish after a page title is the page id: https://www.notion.so/notion_user/My-Learning-Book-8a775ee482ab43732abc9319add819c5 ➑ 8a775ee482ab43732abc9319add819c5

Edit plugin config file from Anki: Tools ➑ Add-ons ➑ Notion Toggles Loader ➑ Config

{
  "debug": false,
  "sync_every_minutes": 30,
  "anki_target_deck": "Notion Sync",
  "notion_token": "<your_notion_token_here>",
  "notion_namespace": "<your_notion_username_here",
  "notion_pages": [
    {
      "page_id": "<page_id1>",
      "recursive": false
    },
    {
      "page_id": "<page_id2>",
      "recursive": true
    }
  ]
}

Known issues & limitations

Behind the scenes, the addon initiates Notion pages export to HTML, then parses the HTML into notes. Since non-public Notion API is used, the addon may break without a warning.

  • As for now, LaTeX and plain text cannot be used in the same cloze: Notion puts them in separate code tags which leads to the creation of two cloze blocks.

  • Some toggle blocks are empty on export which leads to empty Anki notes. The issue is on the Notion side (and they're aware of it).

Configuration parameters

  • debug: bool [default: false] β€” enable debug logging to file.
  • sync_every_minutes: int [default: 30] β€” auto sync interval in minutes. Set to 0 to disable auto sync.
  • anki_target_deck: str [default: "Notion Sync"] β€” the deck loaded notes will be added to.
  • notion_token: str [default: None] β€” Notion APIv2 token.
  • notion_namespace: str [default: None] β€” Notion namespace (your username) to form source URLs.
  • notion_pages: array [default: [] ] β€” List of Notion pages to export notes from.

Inspiration

This project is inspired by a great Notion to Anki.