Doode: DoodStream CLI, API Client, Url link Generator
Project description
๐ฌ Doode: DoodStream CLI, API Client, Url link Generator
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
- Python 3.7 or higher
- A DoodStream API key (free account required)
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
pydebuggerif 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
requestsbeautifulsoup4lxmlrichrich-argparseconfigsetpyperclip(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
pydebuggerto be installed.
๐ License
see the LICENSE file for details.
๐ Acknowledgements
- DoodStream for their API
- Rich for beautiful terminal rendering
- requests & BeautifulSoup for HTTP and parsing
Note: This tool is unofficial and not affiliated with DoodStream. Use responsibly and in compliance with their Terms of Service.
author
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02597217ef3147b480c33f9fcdbbaa5bc04ac334e3255fbe18893ae2d704143e
|
|
| MD5 |
06b35a17399528f9e776e0decf6f881e
|
|
| BLAKE2b-256 |
c3f222168871fe4316c3e72e7af51072e6a188770798a9964d6938b75bead459
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
365d2689f6a7f124f93c8a2165767630b789507ee281151b9b799adc4c5db85d
|
|
| MD5 |
af8670a0fd95bece319ea4191760e324
|
|
| BLAKE2b-256 |
f73f9e440decdf6be7fa455ff119af273eb977b3ba5e434189087c47d72f1dd1
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a695b43cb1a7725b4a228b33fcd8caaec3218645f6ae159fc075a2ac70a6c3a
|
|
| MD5 |
920077f2cac8badf49a204c802846959
|
|
| BLAKE2b-256 |
1f3d6d9a33226f26b242762dadbdf1ecb26aac280d6d2d5478974fb94057f94a
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f97c8e9abc57af7f559a00d2845cd2ec44067ef19076c7a0043bc6adb2e06f1d
|
|
| MD5 |
e632bea2f26293364451e9e65effbc31
|
|
| BLAKE2b-256 |
2d9a5f16ea5ff8d9cb8d48cc8af7f75af9738e4d9f481e23fcec4baeb945644f
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
603d7bf5fffed519c96acd06fa337120c2f91807a5ff4429754cd35798de4fdc
|
|
| MD5 |
1c68eed42ab8d4e597c3242774bb4fe5
|
|
| BLAKE2b-256 |
f87b9f5bb28577a458e8c9f4afd1a5843ca890af1b4266584be1d548ff9b9f9d
|