An open API service indexing awesome lists of open source software.

https://github.com/desertthunder/toolbox

a set of small tools as python scripts and tiny web apps.
https://github.com/desertthunder/toolbox

cli python web

Last synced: 2 days ago
JSON representation

a set of small tools as python scripts and tiny web apps.

Awesome Lists containing this project

README

          

# toolbox

a set of small tools as python scripts and tiny web apps.

CLI

## Walls

`walls` downloads Bing’s "wallpaper of the day" to a local folder.

![December 10, 2025 Image](./images/20251210_en-US.jpg)

### Features

- Fetch today’s or recent Bing wallpapers (up to ~7 days back).
- Supports different markets (e.g. `en-US`, `ja-JP`).
- Optional UHD/4K variant when available.
- Colored, human-friendly terminal output.
- Images saved under `~/Pictures/bing-walls`.

### Usage

```bash
# Today’s en-US wallpaper
walls

# Yesterday’s wallpaper
walls --idx 1

# Japanese 4K wallpaper with extra metadata
walls --market ja-JP --uhd --verbose

# Custom destination folder and no ANSI colors (for logs)
walls --dest ~/wallpapers/bing --no-color
```

### Options

- `-m, --market` - Bing market/locale (default: `en-US`).
- `-i, --idx` - Day offset (`0=today`, `1=yesterday`, up to `7`).
- `-d, --dest` - Destination directory (default: `~/Pictures/bing-walls`).
- `--uhd` - Ask Bing for UHD/4K variants when available.
- `-v, --verbose` - Print title and copyright line.
- `--no-color` - Disable ANSI colors.

## Palette

`palette` is a tiny color exploration tool inspired by [coolors](https://coolors.co) palettes. It renders vertical color bars in your terminal and can also export them as a PNG strip for design docs or sharing.

### Features

- Accepts colors as:
- Hex: `#0ea5e9`, `0ea5e9`
- RGB tuples: `255,0,0`
- `rgb(r,g,b)` notation: `rgb(14,165,233)`
- Renders a row of vertical bars using truecolor ANSI (24-bit).
- Optional labels (the original color strings) below each bar.
- Optional PNG export.

### Usage

#### Terminal palettes

```bash
# Simple 5-color palette
palette '#0ea5e9' '#10b981' '#f97316' '#facc15' '#64748b'

# Mixed formats
palette '#0ea5e9' '16,185,129' 'rgb(249,115,22)'

# Wider bars, taller palette, no labels in terminal
palette '#0ea5e9' '#10b981' '#f97316' --width 12 --height 8 --no-labels
```

#### PNG export

```bash
# Render both terminal view and a PNG
palette \
'#0ea5e9' '#10b981' '#f97316' '#facc15' '#64748b' \
--png ./palettes/ocean-warm.png
```

To Render `three.png`:

![three color palette](./images/three.png)

```sh
# Custom image size, no labels in the PNG
palette \
'#0ea5e9' '16,185,129' 'rgb(249,115,22)' \
--png ./palettes/three.png \
--png-width 900 \
--png-height 200 \
--no-png-labels
```

### Options

- `COLOR...` - ≥ 2 colors (`#rrggbb`, `rrggbb`, `r,g,b`, or `rgb(r,g,b)`).
- `-w, --width` - Bar width (characters) in terminal view.
- `-H, --height` - Bar height (rows) in terminal view.
- `--no-labels` - Hide labels in terminal.
- `--no-color` - Disable ANSI colors.
- `--png PATH` - Write a PNG palette image to `PATH`.
- `--png-width` - PNG width in pixels.
- `--png-height` - PNG bar area height in pixels (labels sit below).
- `--no-png-labels` - Don’t draw labels in the PNG.