Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update readme #289

Merged
merged 4 commits into from
Mar 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 6 additions & 91 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,96 +1,11 @@
# Obsidian x Todoist Plugin
![Sync with Todoist Plugin for Obsidian](./docs/static/img/social-card.jpg)

![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/jamiebrynes7/obsidian-todoist-plugin/premerge.yml?branch=develop&style=for-the-badge) ![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/jamiebrynes7/obsidian-todoist-plugin?style=for-the-badge)
## What is it?

An [Obsidian](https://obsidian.md/) plugin to materialize [Todoist](https://todoist.com/) task lists in Obsidian notes.
An **unofficial** plugin for Obsidian that offers the ability to have your Todoist tasks sync bidirectionally with Obsidian. Please note that this is not created by, affiliated with, or supported by Doist.

![Example gif](./assets/obsidian-todoist-sync.gif)
Please refer to the [documentation](https://jamiebrynes7.github.io/obsidian-todoist-plugin/docs/overview) for details on how to install and use this plugin.

## Usage
If you like this plugin, feel free to support the development by buying a coffee:

1. Install the plugin through the Obsidian's community plugins browser.
2. Enable the plugin in Obsidian.
3. You should get a prompt asking for your [Todoist API token](https://todoist.com/prefs/integrations). (If not, you can enter this in the settings).
4. Place a code block like the following in any note:
````markdown
```todoist
name: My Tasks
filter: "today | overdue"
```
````
5. Swap to preview mode and the plugin should replace this code block with the materialized result of that filter.

> If you are synchronizing your vault, I recommend explicitly ignoring the `.obsidian/todoist-token` file for security reasons, if possible.

## Inputs

The query is defined in YAML and accepts the following keys:

| Name | Required | Description | Type | Default |
| ------------- | :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
| `name` | | The title for the materialized query. You can use the `{task_count}` template which will be replaced by the number of tasks returned by the query. | string | "" |
| `filter` | ✓ | A valid [Todoist filter](https://get.todoist.help/hc/en-us/articles/205248842-Filters)<sup>[1](#footnote-1)</sup> | string | |
| `autorefresh` | | The number of seconds between auto-refreshing. If omitted, the query use the default global settings. | number | null |
| `sorting` | | Describes how to order the tasks in the query. Can be any of 'priority', 'dateAscending' (aliased as 'date'), 'dateDescending', or multiple of these. | string[] | [] |
| `group` | | Denotes whether this query should have its task grouped by project & section. | bool | false |
| `show` | | Describes which elements of the task metadata to render. Possible values: 'due' (aliased as 'date'), 'description', 'project, and 'labels'. | string[] | All metadata |

## Examples

Show current and overdue tasks, ordered by date and then priority, and finally grouped by project & section.

````markdown
```todoist
name: Highest Priority & Date
filter: "today | overdue"
sorting:
- date
- priority
group: true
```
````

Show the inbox only.

````
```todoist
name: Inbox
filter: "#Inbox"
```
````

Show items from the "Chores" project, showing only due date and description:

````
```todoist
name: Chores
filter: "#Chores"
show:
- due
- description
```
````

## Commands

There are also a few commands bundled in with the plugin:

1. 'Sync with Todoist'

This command refreshes all the metadata (projects, sections, and labels) for Todoist tasks. This is done at startup.

2. 'Add Todoist task'

This command opens up a modal for creating a task in Todoist. You can set the project/section, labels, priority, and due date through this modal. Any text selected when this command is executed will be pulled for the task content.

3. 'Add Todoist task with the current page'

Similar to the previous command, this one also appends a link to the current active page to the task input.

## CSS

This plugin comes with default CSS intended for use with the default Obsidian themes.

---

<a name="footnote-1">1</a>: There are some exceptions in the Todoist API. Checkout [this issue](https://github.com/jamiebrynes7/obsidian-todoist-plugin/issues/34) for details.
<a href="https://www.buymeacoffee.com/jamiebrynes" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>
Binary file removed assets/obsidian-todoist-sync.gif
Binary file not shown.
Binary file removed assets/query-parsing-error-example.png
Binary file not shown.
2 changes: 1 addition & 1 deletion docs/docs/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 1

# Overview

The Todoist Sync for Obsidian is an _**unofficial**_ plugin that allows you to integrate your Todoist tasks in your Obsidian vault. This integration is mostly one way, from Todoist into Obsidian. There is a limited ability to modify your Todoist tasks, but this functionality will be improved in the future.
The Sync with Todoist Plugin is an _**unofficial**_ plugin that allows you to integrate your Todoist tasks in your Obsidian vault. This integration is mostly one way, from Todoist into Obsidian. There is a limited ability to modify your Todoist tasks, but this functionality will be improved in the future.

This plugin is designed to work on both desktop and mobile Obsidian clients.

Expand Down
3 changes: 2 additions & 1 deletion docs/docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { themes as prismThemes } from "prism-react-renderer";
import type { Config } from "@docusaurus/types";
import type * as Preset from "@docusaurus/preset-classic";

const title = "Todoist Sync for Obsidian";
const title = "Sync with Todoist Plugin";
const org = "jamiebrynes7";
const project = "obsidian-todoist-plugin";

Expand Down Expand Up @@ -38,6 +38,7 @@ const config: Config = {
],
],
themeConfig: {
image: "img/social-card.jpg",
navbar: {
title: title,
items: [
Expand Down
Binary file added docs/static/img/social-card.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/versioned_docs/version-1.12.0/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 1

# Overview

The Todoist Sync for Obsidian is an _**unofficial**_ plugin that allows you to integrate your Todoist tasks in your Obsidian vault. This integration is mostly one way, from Todoist into Obsidian. There is a limited ability to modify your Todoist tasks, but this functionality will be improved in the future.
The Sync with Todoist Plugin is an _**unofficial**_ plugin that allows you to integrate your Todoist tasks in your Obsidian vault. This integration is mostly one way, from Todoist into Obsidian. There is a limited ability to modify your Todoist tasks, but this functionality will be improved in the future.

This plugin is designed to work on both desktop and mobile Obsidian clients.

Expand Down
Loading