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. Run sleepyconvert about for the project's PyPI + GitHub links.

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.

About — print the version and the project's public PyPI + GitHub links:

$ sleepyconvert about
sleepyconvert 2.3.1
PyPI:   https://pypi.org/project/sleepyconvert/
GitHub: https://github.com/anthonybench/convert

Development

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

Documentation

Metadata

Release files for sleepyconvert 2.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sleepyconvert 2.3.3
File Size Uploaded
sleepyconvert-2.3.3.tar.gz 25.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sleepyconvert 2.3.3
File Interpreter ABI Platform
sleepyconvert-2.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 58.9 kB

Release files / sleepyconvert-2.3.3.tar.gz

Download URL sleepyconvert-2.3.3.tar.gz
Size 25.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ef4f14acf4b0789cef9c2c4713da5a88db70b0b68c05a74ee5b63bac3f6b7f2a
BLAKE2b-256 checksum
How to use checksums
69f81cac6967e81c9db79886204c0ce5e92eb2a64e67e529d44957734c17cb5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.13.5 Darwin/25.5.0

Release files / sleepyconvert-2.3.3-py3-none-any.whl

Download URL sleepyconvert-2.3.3-py3-none-any.whl
Size 33.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b64e2131d67a5499e168ac40519ee5ccc54192e713251842aea348f0109f1621
BLAKE2b-256 checksum
How to use checksums
f4394ed31e4aaf6d2eb65696dc1ca692d78e5409ac6f6bcdda9b4d6678bf3600
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.13.5 Darwin/25.5.0

Release history Release notifications | RSS feed

This release

2.3.3 This release

2 release files

2.3.2

2 release files

2.3.1

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.1.1

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page