Skip to main content

TaskNode CLI tool for running Python scripts in the cloud

Project description

TaskNode 🔄

PyPI version License: MIT Status: Alpha

Note: TaskNode is currently in alpha. While fully functional, you may encounter occasional issues. Please report any bugs on our GitHub issues page.

Do you ever:

  • Keep your computer on all night just to run a script?
  • Run scripts that would benefit from a much faster internet connection?
  • Have too many scripts running at a time?

TaskNode is a powerful command-line tool that lets you run Python scripts asynchronously in the cloud with zero infrastructure setup. Submit a task, and we'll handle the rest.

✨ Features

  • Zero Configuration: Just install and run - we handle all the cloud setup
  • Dependency Management: Automatic detection and packaging of project dependencies
  • Cross-Platform: Works on Linux, macOS, and Windows
  • Notifications: Get an email when your task is complete

🚀 Get started in 2 minutes

First, install TaskNode:

pip install tasknode

Optionally, generate a sample Jupyter notebook to run:

tasknode generate-sample  # copies sample.ipynb to current directory

Then, submit a Jupyter notebook to run in the cloud:

tasknode submit sample.ipynb
# or
tasknode submit your_script.py

Jupyter notebooks

TaskNode also supports Jupyter notebooks. Just submit your notebook (e.g., tasknode submit notebook.ipynb), and we'll convert it to a Python script and run it for you.

Get help and see all commands

tasknode help

📦 What Gets Uploaded?

When you submit a script, TaskNode automatically:

  • 📁 Packages your project directory
  • 🔍 Excludes development folders (.git, venv, pycache, etc.)
  • 📝 Captures dependencies in requirements-tasknode.txt
  • ℹ️ Records Python version and system information
  • 🔒 Securely uploads everything to our cloud infrastructure

FAQ

How does TaskNode handle my files?

TaskNode securely uploads your files to our cloud infrastructure and deletes them after your task is complete. If the task fails, the files are retained for 24 hours in case you need to re-run the task.

Any outputs generated are retained for up to 72 hours, during which time you can download them.

How does TaskNode handle my dependencies?

TaskNode automatically detects your dependencies and packages them in a separate file called requirements-tasknode.txt. This file is uploaded to our cloud infrastructure and installed when your task is run.

How does TaskNode handle my Python version?

Right now, TaskNode runs on Docker containers with Python 3.12. Most Python 3 code will work without any changes, but we're working on adding support for other Python versions.

Where is the data processed?

All data is processed in the AWS US East (N. Virginia) region.

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

tasknode-0.0.28.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tasknode-0.0.28-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file tasknode-0.0.28.tar.gz.

File metadata

  • Download URL: tasknode-0.0.28.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for tasknode-0.0.28.tar.gz
Algorithm Hash digest
SHA256 96397c7c82d82ea347ef589f758f9c166aceeefddf73d9a0f02d2a919d1e402f
MD5 2decb3ff9b45d80b802f36d59e39115e
BLAKE2b-256 fb32374baaa73750b15d29ad874f40dd9ac1cfcaf21884031931aded4a619c0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tasknode-0.0.28.tar.gz:

Publisher: publish.yml on dtnewman/tasknode

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tasknode-0.0.28-py3-none-any.whl.

File metadata

  • Download URL: tasknode-0.0.28-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for tasknode-0.0.28-py3-none-any.whl
Algorithm Hash digest
SHA256 9239598812c7c8e1e078d6c0593f4246c71b8b8052a8592590e8348efdc17abd
MD5 db2a0f0d9259c8bcf0ad230ff8ab56f3
BLAKE2b-256 93700be8823bcd443715b9588e9747ee5d2953e988c9166be23f6cfc83533aca

See more details on using hashes here.

Provenance

The following attestation bundles were made for tasknode-0.0.28-py3-none-any.whl:

Publisher: publish.yml on dtnewman/tasknode

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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