Overview
Develop a newsletter generation system that works with the Mailchimp API. This includes building a draft generator, integrating with Mailchimp, and supporting editorial review while maintaining subscriber consent and privacy.
Goals
- Create a command-line tool to generate newsletter drafts for a target month
- Read conference data from
_data/current.yml and select relevant conferences
- Generate polished Markdown drafts with timely information (CFP, registration, early-bird)
- Support editorial review and sponsor content
- Integrate with Mailchimp API for draft creation and management
- Keep final sending manual until the workflow is proven safe
Implementation Notes
- Upgrade or replace
tools/monthly_data.rb with a non-interactive command (e.g., --month 2026-09)
- Define recurring newsletter sections and selection rules
- Document the Newsletter Format with representative past issues
- Render Markdown drafts rather than raw YAML
- Group supported CFP, registration, and early-bird info without inventing missing details
- Include clearly marked areas for introduction, sponsor copy, announcements, and notes
- Store generated drafts in a version-controlled, predictable location
- Make repeated generation deterministic
- Integrate Mailchimp API for managing drafts (create, update, preview)
- Protect Mailchimp API credentials (use environment variables or GitHub secrets, never commit)
- Maintain human control of sending—no automatic send
Related
- Part of Phase 3.5: Newsletter Generation & Platform Migration
- Depends on: Phase 1.5 completion
- Complements: Quality Ledger & Metrics (Phase 2)
Acceptance Criteria
Resources
Overview
Develop a newsletter generation system that works with the Mailchimp API. This includes building a draft generator, integrating with Mailchimp, and supporting editorial review while maintaining subscriber consent and privacy.
Goals
_data/current.ymland select relevant conferencesImplementation Notes
tools/monthly_data.rbwith a non-interactive command (e.g.,--month 2026-09)Related
Acceptance Criteria
monthly_data.rbor successor accepts--monthparameterResources