Skip to main content

A lightweight CLI toolkit for daily development utilities.

Project description

devbits

A lightweight CLI toolkit for daily development utilities — video/image processing, project file management, and more.

Installation

pip install devbits

Requires Python ≥ 3.9.

Usage

All commands are available in two ways:

# As subcommands of devbits
devbits <command> [options]

# As standalone commands
<command> [options]

Use --help on any command for detailed usage and parameter descriptions:

devbits clipvideo --help
clipvideo --help

Commands

Video

Command Description
clipvideo Trim a video by time (seconds) or frame range. Includes --gui for browser-based editing.
video2images Extract frames from a video.
video2gif Convert a video (or a portion) to animated GIF.
images2video Assemble an image sequence into an MP4 video.
images2gif Assemble an image sequence into an animated GIF.
resizevideo Re-encode a video at a different resolution.

Image

Command Description
resizeimage Resize a single image (preserves aspect ratio by default).
recolor Recolor a logo/icon foreground, leaving the background intact.
image2ico Convert an image to a multi-size ICO file.
batchimages Batch resize or convert all images in a folder.
checkimages Scan for broken / corrupt image files.
contactsheet Generate a thumbnail grid (contact sheet) from a folder of images.

Project / Files

Command Description
clearcache Remove __pycache__ and other Python cache directories.
tree Print a directory tree.
size List the largest files / folders, sorted by size.
renamefiles Batch rename files sequentially.
samplefiles Copy or move the first N files to another folder.

Examples

# Trim video from 5s to 20s
clipvideo movie.mp4 --start 5.0 --end 20.0

# Open interactive clip editor in the browser
clipvideo movie.mp4 --gui

# Convert video to GIF (3.5s–10s at 15 fps)
video2gif movie.mp4 --start 3.5 --end 10.0 --fps 15

# Extract every 5th frame as PNG
video2images movie.mp4 --every 5 --format png

# Recolor a logo's foreground to black (keeps the background)
recolor logo.png

# Recolor a logo's foreground to a custom color (hex or R,G,B)
recolor logo.png --color '#1a73e8'
recolor logo.png --color 0,178,179

# Batch resize images to 800×600
batchimages ./photos -o ./resized --size 800,600

# Clean Python caches
clearcache . --all

Output Defaults

When -o / --output is omitted, the output filename is derived from the input:

clipvideo movie.mp4          →  movie_clip.mp4
video2gif movie.mp4          →  movie.gif
resizeimage photo.jpg        →  photo_resized.jpg
recolor logo.png             →  logo_revised.png
contactsheet ./photos        →  photos_sheet.jpg

License

MIT

Project details


Download files

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

Source Distribution

devbits-1.1.0.tar.gz (32.8 kB view details)

Uploaded Source

Built Distribution

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

devbits-1.1.0-py3-none-any.whl (32.5 kB view details)

Uploaded Python 3

File details

Details for the file devbits-1.1.0.tar.gz.

File metadata

  • Download URL: devbits-1.1.0.tar.gz
  • Upload date:
  • Size: 32.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.6

File hashes

Hashes for devbits-1.1.0.tar.gz
Algorithm Hash digest
SHA256 1ba5549dcb17e241e8f441536c69e6f7392827a1a16eacc4d3469697aba4b35b
MD5 69536f0dad2b81d5e8c55695226bb958
BLAKE2b-256 7da83f25ddc72bb79b1eb4df5a977805d04ab1a593f3ca02550d81ec07f017d4

See more details on using hashes here.

File details

Details for the file devbits-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: devbits-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 32.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.6

File hashes

Hashes for devbits-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c1557b4326d3627e3bb9d7549e2ce1898b44717b5b44bd3a0754f449151ea238
MD5 1d3403621ff9da4224d1dab8c8a514b6
BLAKE2b-256 6b56d2b1b74010f33d7ddd7b9fc6d5fe0dc4dcdee60533e6886a814f84f9161d

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