Skip to main content

Doode: DoodStream CLI, API Client, Url link Generator

Project description

๐ŸŽฌ Doode: DoodStream CLI, API Client, Url link Generator

License Python Rich UI

A feature-rich, user-friendly command-line interface and Python API client for DoodStream โ€” with real-time progress bars, clipboard integration, IDM support (Windows), and comprehensive error handling.


โœจ Features

  • โœ… Full DoodStream API coverage: account, files, folders, remote upload, DMCA, reports
  • ๐Ÿ“Š Real-time monitoring of remote uploads with live progress bar (% complete, ETA)
  • ๐Ÿ”— Generate direct download links from DoodStream shareable URLs
  • ๐Ÿ’พ Local file upload with progress tracking
  • ๐Ÿ–ฅ๏ธ IDM integration (Windows only) for one-click downloads
  • ๐Ÿ“‹ Auto-copy to clipboard for generated download links
  • ๐ŸŽจ Beautiful terminal UI powered by Rich
  • ๐Ÿ›ก๏ธ Robust error handling with clear, actionable messages
  • ๐Ÿงช Dual usage: as a CLI tool or as a Python library
  • ๐Ÿ“š Comprehensive documentation with examples for every method

๐Ÿ“ฆ Installation

Prerequisites

Install via pip

pip install doode

Note: If installing from source, clone this repo and run:

pip install -r requirements.txt

Optional Dependencies

  • Windows users: Install IDM for direct download integration.
  • Debug mode: Install pydebugger if you plan to use debug features.

๐Ÿ”‘ Authentication

You must provide your DoodStream API key in one of two ways:

1. Environment Variable (Recommended)

export DOOD_API_KEY="your_api_key_here"

2. Command-Line Flag

dood --api-key "your_api_key_here" account info

๐Ÿ’ก The environment variable method is preferred for security and convenience.


๐Ÿš€ Quick Start

Generate a Download Link

dood generate "https://dood.li/abc123xyz" -v -c
  • -v: Verbose output (shows download URL in a styled panel)
  • -c: Copy URL to clipboard automatically

Upload a Video Remotely

dood remote upload "https://example.com/video.mp4" --new-title "My Movie"

This starts the upload and monitors it in real-time with a live progress bar!

Upload from Local Disk

dood upload local ./my_video.mp4

View Account Info

dood account info

๐Ÿงฐ Full Command Reference

Account Management

Command Description
dood account info Show account details (email, balance, storage)
dood account reports --last 7 Get usage stats for last 7 days
dood account reports --from-date 2025-01-01 --to-date 2025-01-31 Custom date range report

Remote Upload

Command Description
dood remote upload <URL> Start remote upload
dood remote upload <URL> --new-title "Title" Upload with custom name
dood remote upload <URL> --no-monitor Start upload without monitoring
dood remote status <file_code> Check status of a specific upload
dood remote list List all remote upload jobs
dood remote slots Show available upload slots
dood remote action --restart-errors Restart all failed uploads
dood remote action --delete-code abc123 Delete a specific upload job

๐Ÿ” Real-time monitoring shows:

  • Current download percentage
  • Estimated time remaining
  • Automatic success/failure detection

File Management

Command Description
dood files list List all files
dood files list --fld-id folder123 List files in a folder
dood files info abc123 Get detailed file info
dood files rename abc123 "New Title" Rename a file
dood files search "vacation" Search files by title

Folder Management

Command Description
dood folders create "Movies" Create a new folder
dood folders create "Sub" --parent-id folder123 Create subfolder
dood folders rename folder123 "Renamed" Rename a folder

DMCA & Uploads

Command Description
dood dmca list List DMCA-reported files
dood upload local ./video.mp4 Upload local file

๐Ÿ“Š Real-Time Upload Monitoring

When you run a remote upload, youโ€™ll see a live progress bar like this:

โ ด Uploading... โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”  42% 0:02:15
  • Automatically detects completion or failure
  • Updates every 3 seconds
  • Supports keyboard interrupt (Ctrl+C to stop monitoring)
  • Times out after 1 hour (configurable)

๐Ÿ› ๏ธ Requirements

  • requests
  • beautifulsoup4
  • lxml
  • rich
  • rich-argparse
  • configset
  • pyperclip (for clipboard)
  • licface (custom help formatter)
  • requests-toolbelt (for local upload progress)

All dependencies are installed automatically via pip.


๐Ÿž Error Handling & Debugging

Common Errors

Error Solution
Invalid API key Check your API key at DoodStream Settings
File not found Ensure local file path is correct
Unsupported video format Use: mp4, mkv, avi, mov, webm, etc.
Network error Check internet connection or DoodStream status

Debug Mode

Set environment variable to enable debug output:

export DEBUG=1
dood generate "https://dood.li/abc123"

Requires pydebugger to be installed.


๐Ÿ“œ License

see the LICENSE file for details.


๐Ÿ™Œ Acknowledgements


Note: This tool is unofficial and not affiliated with DoodStream. Use responsibly and in compliance with their Terms of Service.

author

Hadi Cahyadi

Buy Me a Coffee

Donate via Ko-fi

Support me on Patreon

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

doode-0.48.3-cp313-cp313-win_amd64.whl (130.4 kB view details)

Uploaded CPython 3.13Windows x86-64

doode-0.48.3-cp312-cp312-win_amd64.whl (131.1 kB view details)

Uploaded CPython 3.12Windows x86-64

doode-0.48.3-cp311-cp311-win_amd64.whl (139.3 kB view details)

Uploaded CPython 3.11Windows x86-64

doode-0.48.3-cp310-cp310-win_amd64.whl (138.2 kB view details)

Uploaded CPython 3.10Windows x86-64

doode-0.48.3-cp39-cp39-win_amd64.whl (146.1 kB view details)

Uploaded CPython 3.9Windows x86-64

File details

Details for the file doode-0.48.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: doode-0.48.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 130.4 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for doode-0.48.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 02597217ef3147b480c33f9fcdbbaa5bc04ac334e3255fbe18893ae2d704143e
MD5 06b35a17399528f9e776e0decf6f881e
BLAKE2b-256 c3f222168871fe4316c3e72e7af51072e6a188770798a9964d6938b75bead459

See more details on using hashes here.

File details

Details for the file doode-0.48.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: doode-0.48.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 131.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for doode-0.48.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 365d2689f6a7f124f93c8a2165767630b789507ee281151b9b799adc4c5db85d
MD5 af8670a0fd95bece319ea4191760e324
BLAKE2b-256 f73f9e440decdf6be7fa455ff119af273eb977b3ba5e434189087c47d72f1dd1

See more details on using hashes here.

File details

Details for the file doode-0.48.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: doode-0.48.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 139.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for doode-0.48.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5a695b43cb1a7725b4a228b33fcd8caaec3218645f6ae159fc075a2ac70a6c3a
MD5 920077f2cac8badf49a204c802846959
BLAKE2b-256 1f3d6d9a33226f26b242762dadbdf1ecb26aac280d6d2d5478974fb94057f94a

See more details on using hashes here.

File details

Details for the file doode-0.48.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: doode-0.48.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 138.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for doode-0.48.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f97c8e9abc57af7f559a00d2845cd2ec44067ef19076c7a0043bc6adb2e06f1d
MD5 e632bea2f26293364451e9e65effbc31
BLAKE2b-256 2d9a5f16ea5ff8d9cb8d48cc8af7f75af9738e4d9f481e23fcec4baeb945644f

See more details on using hashes here.

File details

Details for the file doode-0.48.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: doode-0.48.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 146.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for doode-0.48.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 603d7bf5fffed519c96acd06fa337120c2f91807a5ff4429754cd35798de4fdc
MD5 1c68eed42ab8d4e597c3242774bb4fe5
BLAKE2b-256 f87b9f5bb28577a458e8c9f4afd1a5843ca890af1b4266584be1d548ff9b9f9d

See more details on using hashes here.

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