All Projects → kontheocharis → notion_scheduler

kontheocharis / notion_scheduler

Licence: MIT license
Allows the creation of recurring tasks in Notion.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to notion scheduler

notion-rtl
ARCHIVED - A Chrome extension to enable RTL support in https://notion.so
Stars: ✭ 58 (+241.18%)
Mutual labels:  notion
notion-sdk-kotlin-old
Unofficial Notion.so API wrapper, written in Kotlin
Stars: ✭ 69 (+305.88%)
Mutual labels:  notion
notion-repackaged
notion executables with the notion-enhancer embedded & a vanilla port of the official app to linux
Stars: ✭ 733 (+4211.76%)
Mutual labels:  notion
notion-avatar
🪄 An online tool for making notion-style avatars.
Stars: ✭ 1,687 (+9823.53%)
Mutual labels:  notion
notion-sdk-php
A complete Notion SDK for PHP developers.
Stars: ✭ 60 (+252.94%)
Mutual labels:  notion
Potion
A Personalized Notion
Stars: ✭ 13 (-23.53%)
Mutual labels:  notion
notion-linux-wrapper
Notion.so desktop application for Linux
Stars: ✭ 37 (+117.65%)
Mutual labels:  notion
go-notion
Notion Official API Go Client.
Stars: ✭ 14 (-17.65%)
Mutual labels:  notion
open-in-notion
Chrome Extension to redirect Notion pages links to the desktop app.
Stars: ✭ 42 (+147.06%)
Mutual labels:  notion
shellbear.me
Source code of my personal website and blog ✨
Stars: ✭ 177 (+941.18%)
Mutual labels:  notion
notion-tqdm
Progress Bar displayed in Notion like tqdm for Python
Stars: ✭ 64 (+276.47%)
Mutual labels:  notion
narkdown-py
A tool to use Notion as a Markdown editor.
Stars: ✭ 38 (+123.53%)
Mutual labels:  notion
NotionSwift
Unofficial Notion API SDK for iOS & macOS
Stars: ✭ 49 (+188.24%)
Mutual labels:  notion
nobelium
A static blog build on top of Notion and NextJS, deployed on Vercel.
Stars: ✭ 1,790 (+10429.41%)
Mutual labels:  notion
notionapi-agent
Unofficial Node.js API client for Notion.so
Stars: ✭ 89 (+423.53%)
Mutual labels:  notion
notion-instagram
Schedule & Publish posts to Instagram from Notion
Stars: ✭ 115 (+576.47%)
Mutual labels:  notion
pagely
Launch beautiful websites straight from your Notion workspace or from your GitHub repo
Stars: ✭ 63 (+270.59%)
Mutual labels:  notion
typiform
⚛️ A serverless React powered online form builder that works like a doc.
Stars: ✭ 16 (-5.88%)
Mutual labels:  notion
NotionAI-MyMind
This repo uses AI and the wonderful Notion to enable you to add anything on the web to your "Mind" and forget about everything else.
Stars: ✭ 181 (+964.71%)
Mutual labels:  notion
notion
A notion.so v3 client for Go.
Stars: ✭ 11 (-35.29%)
Mutual labels:  notion

Warning: This software is currently broken because it uses an unofficial Notion API library. The plan is to re-write it soon, using the Notion API official public beta, which was released in late May. UPDATE: See https://github.com/kontheocharis/notion-scheduler

notion_scheduler

This tool allows the creation of---drumroll---recurring tasks in Notion!

This is done by defining a Notion database (which I will call the Scheduled database) that contains rules for recurring tasks. This tool reads these definitions and creates each occurrence of those tasks in your actual tasks database (which I will call the Tasks database).

DISCLAIMER: I am not responsible if this tool causes any data loss in your Notion database. Always back up your data!

Installation

pip3 install notion-scheduler
notion_scheduler -h

You can also run this from source by installing all the requirements (see requirements.txt) and running ./notion_scheduler.py -h.

Tip: the --dry-run --log-level=verbose option set can be really useful to see what will happen before applying changes.

Fields required in the Scheduled database

The fields below are case insensitive.

Name of field Type of field Description
Title Text The title of the task
Recurrence Text The recurrence rule for the task (see recurrent for supported rules)
Not on Text A recurrent rule that describes dates to exclude
Start date Date The date from which notion_scheduler should start creating this task
Include time Checkbox Whether to include time in the created tasks (defined in the Recurrence field)
Duration Text If "Include time", how long should each created task last (see durations for syntax)? Empty means no end time.
Reminder Text A durations rule that describes when you should be reminded. Empty means no reminder.
Date field Text or Select The name of the date field of the Tasks database

Any additional fields defined in the Scheduled database will be copied over to each created task, as defined in the properties_to_sync configuration option (see below).

Configuration

The configuration file is located at $XDG_CONFIG_HOME/notion_scheduler/config.yml.

Options

The options below should be in YAML format in the configuration file.

Name of option Type Description
todo_collection_url str The url of the Tasks database.
scheduled_collection_url str The url of the Scheduled database.
token_v2 str Notion v2 token. Get by inspecting your browser's cookies on a Notion page.
properties_to_sync List[str] Additional properties to sync over from the Scheduled database.
tags_property str The Select field named by this option for which to add the tag scheduled_tag for each created task.
scheduled_tag str The tag to put in tags_property for each created task. Allows notion_scheduler to keep track of which tasks in the Tasks database it has generated, so that it can replace them with the updated ones on every run.
rescheduled_tag str If you ever manually reschedule a scheduled task in the Tasks database, remove the tag scheduled_tag from the field tags_property, and add the tag defined by this option. This allows control over which tasks notion_scheduler deletes on re-run (see command-line options).
status_property Optional[str] If this exists, set the Select field named by this option to status_before_today if a created task is scheduled for before today, or status_after_today if a created task is scheduled for on or after today.
status_before_today str See status_property
status_after_today str See status_property
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].