Ladies That Integrate
The evolution of Vigilant Guide. Same purpose (Instagram Story graphics for Ladies That UX Floripa), but fully automated.
From UI to CLI
The web tool worked, but there was still manual data entry. Hanane was already tracking job posts in Airtable. Why copy-paste into a web form when we could just read the database directly?
So I built a CLI that:
- Fetches job postings from Airtable (status=âBacklogâ, no image yet)
- Generates graphics for each one using Pillow
- Batch-updates Airtable to mark them as processed
- Plays the GTA San Andreas theme when done
That last part is important for morale.
Why Pillow Won
The browser Canvas API works, but typography is limited. Pillow gave us:
- Custom fonts (Bariol, the communityâs brand font)
- Better text wrapping and centering
- Higher quality output
- Batch processing without a browser
The image generation code is more complex, but the results are cleaner.
The Pipeline
Airtable (job posts)
â Python fetches batch
â Pillow composites text onto background
â Saves PNG with job ID
â Updates Airtable in chunks of 10
â "Ah shit, here we go again" plays Smart Text Wrapping
The trickiest part: fitting variable-length job titles onto fixed-size graphics. Custom algorithm that:
- Respects line width constraints
- Breaks at punctuation when possible
- Centers each line
- Adjusts spacing dynamically
Not rocket science, but satisfying to get right.
Community Impact
Small tool, real impact. Hanane could process a weekâs worth of job posts in seconds instead of hours. More time for actually running the community, less time pushing pixels.
Sometimes the best projects are tiny automation scripts that save someone you care about from tedious work.
