Skip to content

amadad/drawbot-cli-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DrawBot Redux

Design system for DrawBot with typography enforcement and CLI tooling.

Install

uv pip install -e ".[cli,drawbot]"

CLI

drawbot render script.py          # Render script
drawbot render script.py --open   # Render and open
drawbot preview script.py         # Quick render + open
drawbot watch script.py           # Hot reload
drawbot new poster --template grid  # Scaffold from template
drawbot from-spec poster.yaml     # Render from YAML
drawbot templates list            # List templates

# Evolutionary form generation
drawbot evolve init               # Initialize project
drawbot evolve gen0 -n 16         # Generate initial population
drawbot evolve select gen_000 -w 1,2,3  # Select winners
drawbot evolve breed gen_000      # Breed next generation
drawbot evolve status             # Show evolution status

Usage

import drawBot as db
from drawbot_grid import Grid
from drawbot_design_system import (
    POSTER_SCALE, setup_poster_page, draw_wrapped_text, get_output_path
)

WIDTH, HEIGHT, MARGIN = setup_poster_page("letter")
grid = Grid.from_margins((-MARGIN,)*4, column_subdivisions=12, row_subdivisions=8)

db.fill(0.1)
db.rect(*grid[(0, 6)], *grid*(12, 2))  # Header bar

db.saveImage(str(get_output_path("poster.pdf")))

Structure

├── cli/
│   ├── main.py        # CLI entry point
│   ├── spec.py        # YAML spec renderer
│   └── evolve/        # Evolutionary form generation
├── lib/               # Design system
├── examples/          # Example scripts
├── docs/              # guide.md, api.md
└── output/            # Rendered output

Docs

About

www.drawbot.com

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages