Skip to main content

Asananas helps you with your project management in Asana.

Project description

Streamlit App


Asananas helps you with your project management in Asana. It assumes that a single Asana project, e.g. called "Company Workstreams", is used for high-level project planning of your company or your team. Different projects/workstreams are reflected in Asana as tasks in the dedicated Asana project. These Asana tasks can be assigned to different people and have a start and a due date. Asananas helps you to visualize the allocation of your team members over time. Additionally, it helps you to sync your Asana tasks with Linear, a project management tool for software development teams. This is particularly useful for projects that are more technical in nature.

Example Resource Allocation

Disclaimer

This package is a PoC that has been developed within a few hours. Bit and pieces of the code are unclean and very hacky. For a more detailed list of the limitations see the section "Limitations & Improvements" below.

Additionally it is worth mentioning that about 75% of all the code (including the markdown text in the dashboard) has been suggested by GitHub Copilot and the logo has been created by the a stable-diffusion model using the prompt "A cartoon of a pineapple wearing sunglasses while flying through the sky". 🙂

Quick Start

To start quickly simply install the package via pip and launch the built-in dashboard. The dashboard explains how to set up the link with Asana and Linear.

pip install asananas
asananas-dashboard

You can also use the low-level function of the package, e.g.

from asananas.asana_connector import AsanaConnector
from asananas.allocation_management import extract_allocation_data, visualize_allocation_by_week
  
asana_connector = AsanaConnector(access_token="foo")

workspaces = asana_connector.get_workspaces()
workspace_id = workspaces[0]["gid"]

projects = asana_connector.get_projects_for_workspace(workspace_id)
project_id = projects[0]["gid"]

df_asana_tasks = asana_connector.get_all_tasks_for_project(project_id)

df_allocation_data, _, _ = extract_allocation_data(df_asana_tasks, n_workdays_per_week=5)
fig = visualize_allocation_by_week(df_allocation_data)
fig.write_html("my_allocation_plot.html")

Limitations & Improvements

  • The package is not very well tested, in particular there is not a single unit test.
  • The package does not contain proper error management, e.g. there are no checks whether the allocation field actually exists in the Asana tasks. In general, the dashboard is not prepared for wrong user interaction and does not really help solving the issue.
  • The code is hardly documented.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asananas-0.5.0.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

asananas-0.5.0-py3-none-any.whl (4.3 MB view details)

Uploaded Python 3

File details

Details for the file asananas-0.5.0.tar.gz.

File metadata

  • Download URL: asananas-0.5.0.tar.gz
  • Upload date:
  • Size: 4.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.0

File hashes

Hashes for asananas-0.5.0.tar.gz
Algorithm Hash digest
SHA256 95f6e00dfffd1672ca05bfdc9cfe771bd639ea24a5a0c8e66d4f1c247f5fe597
MD5 115fc7c2bb06072881da7de33fa11050
BLAKE2b-256 7a6ff70f3deea628bbc5d11fc548eaa297d663e9907be8a108f06d0ee21bb4b3

See more details on using hashes here.

File details

Details for the file asananas-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: asananas-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.0

File hashes

Hashes for asananas-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9e87e6bab3280145009589e5bbdc334ddab6084eebf0623fad7837f4e2ebc65d
MD5 42d115eda832172000a93cf34d6d81f4
BLAKE2b-256 25631f0d8debc1379a372cf51aa39ad5ff55ff25e0bff60d1aa199ff37013096

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page