Skip to content

dylantjb/asana2calendar

Repository files navigation

Asana2Calendar

This is a Python-based application that allows you to sync events between tasks in an Asana project and events in a CalDAV calendar. The application uses SQLite as its database system with CalDAV and Asana libraries to access their respective APIs.

Prerequisites

  • Have a project with custom field title, 'Location' and type 'Text'.
  • Create your asana client ID by following the instructions here.

Installation

  1. Install the package with pip:
pip install asana2calendar
  1. Create your configuration using [config.example.ini] or with:
asana2calendar --create-config [CONFIG_PATH]
  1. Create your database with:
asana2calendar --create-db [DB_PATH]
  1. Run the package:
asana2calendar [-c [CONFIG_PATH]] [-d [DB_PATH]]

TODO

  • Use OAuth instead of PAT
  • Automatic conflict resolution based on the modified_date field.
  • Recurring events
  • User can choose to dry run sync changes
  • Daemon to listen for changes
  • Support for Google and Outlook calendars
  • Allow to sync as caldav tasks and appointments

License

This project is licensed under the GPLv3 License. See LICENSE.txt for more information.

About

Syncs your Asana calendar across multiple platforms

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published