Newsletter SDLC Process
Defines a complete SDLC process for building email newsletter systems with AWS SES, DynamoDB, and MJML templates.
What this file does
Defines a complete SDLC process for building email newsletter systems with AWS SES, DynamoDB, and MJML templates.
When to use it
- Building a newsletter service from scratch
- Adding subscriber management to an existing app
- Creating automated email campaigns with AWS
- Setting up a CI/CD pipeline for email templates
Assumes this stack
Newsletter SDLC Process
Process Type: Email Newsletter System Parent Process: BBWS SDLC v1
Overview
This process is for creating email newsletter systems including templates, subscriber management, and automated sending.
Applicable Stages
Backend (API)
| Stage | Name | Required |
|---|---|---|
| 1 | Requirements | Yes |
| 4 | API Tests | Yes |
| 5 | API Implementation | Yes |
| 7 | Infrastructure | Yes |
| 8 | CI/CD | Yes |
Frontend (Management UI)
| Stage | Name | Required |
|---|---|---|
| F1 | UI/UX Design | Yes |
| F3 | React Implementation | Yes |
| F6 | Deployment | Yes |
Technology Stack
- Email Service: AWS SES
- Subscriber DB: DynamoDB
- Templates: MJML (responsive emails)
- Scheduling: EventBridge
- Analytics: CloudWatch + Custom
Components
Newsletter API
POST /newsletters # Create newsletter
GET /newsletters # List newsletters
GET /newsletters/{id} # Get newsletter
POST /newsletters/{id}/send # Send newsletter
Subscriber API
POST /subscribers # Subscribe
DELETE /subscribers/{id} # Unsubscribe
GET /subscribers # List (admin)
Project Template
newsletter_service/
├── src/
│ ├── handlers/
│ │ ├── newsletter_handlers.py
│ │ ├── subscriber_handlers.py
│ │ └── send_handlers.py
│ ├── services/
│ │ ├── ses_service.py
│ │ └── template_service.py
│ └── templates/
│ └── email/
├── frontend/
│ └── newsletter-admin/
├── terraform/
└── CLAUDE.md
Email Template Structure
<!-- templates/newsletter.mjml -->
<mjml>
<mj-body>
<mj-section>
<mj-column>
<mj-text>{{HEADER}}</mj-text>
<mj-image src="{{HERO_IMAGE}}"/>
<mj-text>{{CONTENT}}</mj-text>
<mj-button href="{{CTA_LINK}}">{{CTA_TEXT}}</mj-button>
</mj-column>
</mj-section>
</mj-body>
</mjml>
Estimated Duration
| Mode | Duration |
|---|---|
| Agentic | 6 hours |
| Manual | 24 hours |
Examples
- Marketing Newsletter
- Product Updates
- Weekly Digest
- Promotional Campaigns
Quick Start: Use API stages 4-8 + Frontend stages F1, F3, F6.
What's inside
5 sections: overview, stages, tech stack, components, project template, email template, duration, examples.
Change this for your project
- Replace
newsletter_service/with your own project name - Replace
BigBeardWebSolutions/4_bbws_webdev_workspacewith your repository path - Replace
{{HEADER}},{{HERO_IMAGE}},{{CONTENT}},{{CTA_LINK}},{{CTA_TEXT}}with your actual template variables
Where it goes
Keep it in your repository where the agent or team that needs it will read it.
Related Documents
YoForex Platform - Technical Documentation
Documents a forex trading community platform's architecture, admin dashboard features, API endpoints, and database schema for developers maintaining or extending the system.
PRD — LocalGenius Revenue & Retention Sprint
Defines a 3-day sprint to add annual billing, a MoM progress line in the weekly digest, and a confirmation email for a local-business marketing tool.
CareLink AI FINAL Master Launch Plan
Defines a 52-week solo-founder launch plan for a senior care marketplace, covering strategy, pricing, acquisition, and budget across five personas.
Changelog
Documents three major releases: a pattern-based SEO metadata architecture, a community gamification system with badges and reputation tiers, and BetterStack heartbeat monitoring for cron jobs.