sdexe
Suite for Downloading, Editing & eXporting Everything
Local tools for media downloads, PDF manipulation, image processing, and file conversion. Everything runs on your machine. No uploads, no accounts, no data leaves your device.
Install
One command sets up everything on a fresh machine (Homebrew on macOS, Python 3.12, ffmpeg, then sdexe in its own private environment at ~/.sdexe). Safe to re-run.
macOS / Linux:
curl -fsSL https://sdexe.com/install.sh | bash
Windows (PowerShell):
irm https://sdexe.com/install.ps1 | iex
Already have Python 3.10+? Then just:
pip install sdexe
(Or into a venv of your choice. pipx works too.)
Update
sdexe update
Upgrades sdexe and its downloader engine in place. The Settings page has a button that does the same.
Requirements
- Python 3.10+ (the installer handles this)
- ffmpeg: installed by the installer; otherwise sdexe falls back to a bundled copy and offers to install the full one on first run
Usage
sdexe
Opens http://localhost:5001 in your browser. All processing happens locally.
Features
Media Downloader
Download videos and audio from YouTube, Instagram, TikTok, SoundCloud, Twitch, Vimeo, X, and 1000+ other sites.
- Formats: MP3 (128/192/320 kbps), MP4, FLAC, WAV
- Quality options: Best, 1080p, 720p, 480p for video
- Playlist and batch URL support (up to 3 concurrent downloads)
- Subtitle download for MP4
- Thumbnail embedded as album art
- Set a permanent output folder to skip manual saving
- Real-time progress with speed, ETA, and cancel button
- Desktop notifications when downloads finish
- Download history with re-fetch button
PDF Tools
- Merge: combine multiple PDFs, drag to reorder
- Split: split by page ranges (e.g.
1-3, 5, 8-10) or every page - Images to PDF: convert JPG/PNG/WebP images into a single PDF
- Compress: reduce file size by compressing content streams
- Extract Text: pull all text to a .txt file with page markers
- Password: add or remove PDF password protection
Image Tools
- Resize: by dimensions or percentage, with aspect ratio lock
- Compress: batch compression at High / Medium / Low quality
- Convert: convert between PNG, JPG, and WebP (batch supported)
File Converter
- Markdown → HTML: live preview + styled standalone HTML output
- CSV ↔ JSON: bidirectional, first row as headers
- JSON ↔ YAML: bidirectional
- CSV ↔ TSV: bidirectional
- XML → JSON
Development
git clone https://github.com/gedaliahs/sdexe.git
cd sdexe
python -m venv venv
source venv/bin/activate
pip install -e .
sdexe
Release files for sdexe 0.2.26
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sdexe-0.2.26.tar.gz | 215.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sdexe-0.2.26-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 445.2 kB
Release files / sdexe-0.2.26.tar.gz
| Download URL | sdexe-0.2.26.tar.gz |
|---|---|
| Size | 215.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fe1c1d3a5efccd5a3abf503921a1227b230e39798032c20c3e77724492224ca4
|
|
BLAKE2b-256 checksum How to use checksums |
97094afe02593edeaf2d7d0f9a6ed4fb36f2dab47fc95fa6e1ef36c2f6556b00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|
Release files / sdexe-0.2.26-py3-none-any.whl
| Download URL | sdexe-0.2.26-py3-none-any.whl |
|---|---|
| Size | 229.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b72178a53971fcea346980623375641e20c45d35fbc6355caee00ae13fb5fe12
|
|
BLAKE2b-256 checksum How to use checksums |
b6ad065dcfd10945757d1e1646fabe4f2b503520c48fdf22d2f14ad5da24b01e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|