Skip to main content

🔄 sleepyconvert

Convert data, images, and documents between formats from one terse CLI.

PyPI Python License

sleepyconvert is a Typer CLI that converts files between formats, inferring intent solely from the input and output extensions — no subcommands, no flags to memorize. Point it at a source and a destination and it does the right thing.

Install

uv tool install sleepyconvert     # or: pipx install sleepyconvert

-v / --version prints the version and best-effort checks PyPI for a newer release — it works even when placed alongside the paths.

Configure

sleepyconvert is a sleepy util and reads its settings from the shared ~/sleepyconfig/params.yml, using the convert_ key prefix. If the file is absent it writes only its own section (below) and says so; if a value it needs is missing it prints this snippet and asks you to verify your config.

# sleepyconvert
convert_output_archive_dir: null   # a dir → also save a dated copy of every output; null → off
  • convert_output_archive_dir — when set to a directory, every conversion also drops a dated copy of its output there as <archive_dir>/<yyyy>_<mm>_<dd>_<output_filename>.

Supported conversions

Category Extensions
Data csv, parquet, json, pkl, xlsx
Images png, jpg, jpeg
Documents html, pdf, md

Any pair within the same category is valid (in either direction); cross-category conversions are rejected.

Usage

sleepyconvert <input_path> <output_path>

Both paths resolve relative to the current directory, and their extensions decide the conversion.

Data — round-trip between tabular formats:

$ sleepyconvert sales.csv sales.parquet
Created /Users/dingus/work/sales.parquet

Images — re-encode between raster formats:

$ sleepyconvert photo.png photo.jpg
Created /Users/dingus/pics/photo.jpg

Documents — convert between markup and PDF:

$ sleepyconvert notes.md notes.pdf
Created /Users/dingus/docs/notes.pdf

With convert_output_archive_dir set, each conversion also writes a dated archive copy:

$ sleepyconvert sales.csv sales.parquet
Created /Users/dingus/work/sales.parquet
Archived copy written to /Users/dingus/archive/2026_02_09_sales.parquet

Mixing categories fails fast with a clear message:

$ sleepyconvert data.csv chart.png
Error: Input and output extensions must belong to the same type group.
Use `convert --help` to see the supported categories.

Development

uv venv
uv pip install -e ".[dev]"
uv run pytest          # or ./tools/test.sh

Documentation

Download files

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

Source Distribution

sleepyconvert-2.3.2.tar.gz (24.2 kB view details)

Uploaded Source

Built Distribution

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

sleepyconvert-2.3.2-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file sleepyconvert-2.3.2.tar.gz.

File metadata

  • Download URL: sleepyconvert-2.3.2.tar.gz
  • Upload date:
  • Size: 24.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.13.5 Darwin/25.5.0

File hashes

Hashes for sleepyconvert-2.3.2.tar.gz
Algorithm Hash digest
SHA256 bf0f73c50dcc21e1085eb24c6abb12c1fd655ef110ebe7edf18c44cdcf08eff6
MD5 7f9fe7087265dba168781521619aad4d
BLAKE2b-256 42d8a5cd9f41a428ae5abdcec40cb51c1d52cdf168be107d898d0a2a60d00b77

See more details on using hashes here.

File details

Details for the file sleepyconvert-2.3.2-py3-none-any.whl.

File metadata

  • Download URL: sleepyconvert-2.3.2-py3-none-any.whl
  • Upload date:
  • Size: 32.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.13.5 Darwin/25.5.0

File hashes

Hashes for sleepyconvert-2.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 37ab4ec4eac2434a2460a36545ea49ce909bb6668770418908c009137756ae76
MD5 823bd1aac1096866fd49c2405b715fb3
BLAKE2b-256 7aa35ae9e1512e0a42823d90729bad38c284b9b964591b3e831ccec215cb4841

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 Sentry Error logging StatusPage Status page