Draw
Design toolkit for managing color palettes, generating swatches, mixing colors, creating gradients, previewing designs, and exporting results. A command-line companion for designers and front-end developers.
Commands
| Command |
Description |
draw palette <input> |
Create or log a color palette entry |
draw preview <input> |
Record a design preview note |
draw generate <input> |
Generate and log a design asset or concept |
draw convert <input> |
Log a color or format conversion |
draw harmonize <input> |
Record a color harmony analysis |
draw contrast <input> |
Log a contrast check result |
draw export <input> |
Log an export operation |
draw random <input> |
Record a random color or design generation |
draw browse <input> |
Log a browsing/discovery session |
draw mix <input> |
Record a color mixing result |
draw gradient <input> |
Log a gradient definition |
draw swatch <input> |
Record a color swatch entry |
draw stats |
Show summary statistics across all logs |
draw export <fmt> |
Export all data (json, csv, or txt) |
draw search <term> |
Search across all log files for a term |
draw recent |
Show the 20 most recent activity entries |
draw status |
Health check — version, disk usage, last activity |
draw help |
Show all available commands |
draw version |
Show current version |
Each command without arguments displays the most recent 20 entries from its log file.
Data Storage
All data is stored in ~/.local/share/draw/:
- Per-command logs —
palette.log, preview.log, generate.log, convert.log, harmonize.log, contrast.log, export.log, random.log, browse.log, mix.log, gradient.log, swatch.log
- Activity history —
history.log (unified timeline of all actions)
- Exports —
export.json, export.csv, or export.txt (generated on demand)
Data format: each entry is stored as YYYY-MM-DD HH:MM|<value>, pipe-delimited for easy parsing.
Requirements
- Bash 4+ with
set -euo pipefail
- Standard POSIX utilities (
date, wc, du, head, tail, grep, cut, basename)
- No external dependencies or API keys required
When to Use
- Building a color system — log palettes, harmonies, and contrast checks while designing a brand or UI theme
- Prototyping design assets — generate swatches, gradients, and random color explorations for rapid iteration
- Auditing accessibility — record contrast ratios and color harmony data for WCAG compliance reviews
- Maintaining a design journal — track every color decision, mix experiment, and conversion over time
- Exporting design data — export your full color and design history as JSON, CSV, or plain text for handoff to other tools
Examples
# Log a new palette
draw palette "#FF5733 #33FF57 #3357FF warm-sunset"
# Record a contrast check
draw contrast "bg:#FFFFFF fg:#333333 ratio:12.6:1 PASS"
# Mix two colors and log the result
draw mix "#FF0000 + #0000FF = #800080 purple"
# Generate a gradient definition
draw gradient "linear 90deg #000000 → #FFFFFF"
# Create a swatch entry
draw swatch "Coral #FF7F50 used in header CTA"
# Export all design data as JSON
draw export json
# Search all logs for a specific hex color
draw search "FF5733"
# View recent activity
draw recent
# Check overall status
draw status
Output
All command output goes to stdout. Redirect to a file if needed:
draw stats > design-report.txt
draw export csv
Powered by BytesAgain | bytesagain.com | hello@bytesagain.com
1---2name: draw3description: Create SVG diagrams with shapes, layers, and multi-format export. Use when generating graphics, building diagrams, arranging layouts.4license: MIT-05---6# Draw78Design toolkit for managing color palettes, generating swatches, mixing colors, creating gradients, previewing designs, and exporting results. A command-line companion for designers and front-end developers.910## Commands1112| Command | Description |13|---------|-------------|14| `draw palette <input>` | Create or log a color palette entry |15| `draw preview <input>` | Record a design preview note |16| `draw generate <input>` | Generate and log a design asset or concept |17| `draw convert <input>` | Log a color or format conversion |18| `draw harmonize <input>` | Record a color harmony analysis |19| `draw contrast <input>` | Log a contrast check result |20| `draw export <input>` | Log an export operation |21| `draw random <input>` | Record a random color or design generation |22| `draw browse <input>` | Log a browsing/discovery session |23| `draw mix <input>` | Record a color mixing result |24| `draw gradient <input>` | Log a gradient definition |25| `draw swatch <input>` | Record a color swatch entry |26| `draw stats` | Show summary statistics across all logs |27| `draw export <fmt>` | Export all data (json, csv, or txt) |28| `draw search <term>` | Search across all log files for a term |29| `draw recent` | Show the 20 most recent activity entries |30| `draw status` | Health check — version, disk usage, last activity |31| `draw help` | Show all available commands |32| `draw version` | Show current version |3334Each command without arguments displays the most recent 20 entries from its log file.3536## Data Storage3738All data is stored in `~/.local/share/draw/`:3940- **Per-command logs** — `palette.log`, `preview.log`, `generate.log`, `convert.log`, `harmonize.log`, `contrast.log`, `export.log`, `random.log`, `browse.log`, `mix.log`, `gradient.log`, `swatch.log`41- **Activity history** — `history.log` (unified timeline of all actions)42- **Exports** — `export.json`, `export.csv`, or `export.txt` (generated on demand)4344Data format: each entry is stored as `YYYY-MM-DD HH:MM|<value>`, pipe-delimited for easy parsing.4546## Requirements4748- Bash 4+ with `set -euo pipefail`49- Standard POSIX utilities (`date`, `wc`, `du`, `head`, `tail`, `grep`, `cut`, `basename`)50- No external dependencies or API keys required5152## When to Use53541. **Building a color system** — log palettes, harmonies, and contrast checks while designing a brand or UI theme552. **Prototyping design assets** — generate swatches, gradients, and random color explorations for rapid iteration563. **Auditing accessibility** — record contrast ratios and color harmony data for WCAG compliance reviews574. **Maintaining a design journal** — track every color decision, mix experiment, and conversion over time585. **Exporting design data** — export your full color and design history as JSON, CSV, or plain text for handoff to other tools5960## Examples6162```bash63# Log a new palette64draw palette "#FF5733 #33FF57 #3357FF warm-sunset"6566# Record a contrast check67draw contrast "bg:#FFFFFF fg:#333333 ratio:12.6:1 PASS"6869# Mix two colors and log the result70draw mix "#FF0000 + #0000FF = #800080 purple"7172# Generate a gradient definition73draw gradient "linear 90deg #000000 → #FFFFFF"7475# Create a swatch entry76draw swatch "Coral #FF7F50 used in header CTA"7778# Export all design data as JSON79draw export json8081# Search all logs for a specific hex color82draw search "FF5733"8384# View recent activity85draw recent8687# Check overall status88draw status89```9091## Output9293All command output goes to stdout. Redirect to a file if needed:9495```bash96draw stats > design-report.txt97draw export csv98```99100---101102*Powered by BytesAgain | bytesagain.com | hello@bytesagain.com*