skills/developer-newsletter/SKILL.md
When the user wants to create, write, or improve a newsletter for developer audiences. Trigger phrases include "newsletter," "email marketing," "developer email," "weekly digest," "dev newsletter," "e
npx skillsauth add ranbot-ai/awesome-skills developer-newsletterInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill when you need when the user wants to create, write, or improve a newsletter for developer audiences. Trigger phrases include "newsletter," "email marketing," "developer email," "weekly digest," "dev newsletter," "email subscribers," "newsletter growth," or "email list.".
This skill helps you build and write newsletters that developers actually open, read, and look forward to receiving. Covers content strategy, writing, growth, and deliverability.
Load your audience context first. Read .agents/developer-audience-context.md to understand:
If the context file doesn't exist, run the developer-audience-context skill first.
| Type | Description | Example | |------|-------------|---------| | Product updates | Changelog, new features, tips | Vercel's updates | | Curated links | Best content from around the web | TLDR, Bytes | | Original content | Your own articles, tutorials | Cassidy Williams | | Community digest | What happened in your community | Dev community roundups | | Educational series | Teaching a topic over time | Course-style newsletters |
Best practice: Pick ONE primary type. You can mix in others, but have a clear identity.
| Frequency | Best For | Risk | |-----------|----------|------| | Daily | Curated links, news | Fatigue, hard to maintain | | Weekly | Most newsletters | Sweet spot for most | | Bi-weekly | Original content heavy | Can lose momentum | | Monthly | Product updates, digests | Easy to forget you exist |
Developer preference: Weekly is the sweet spot. Developers are busy and inbox-protective.
| Percentage | Content Type | Purpose | |------------|--------------|---------| | 70% | Value content | Teach, inform, help | | 20% | Product content | Updates, features, how-tos | | 10% | Promotional | CTAs, asks, sales |
Build a rotation of these:
| Category | Examples | |----------|----------| | Tutorials | "How to implement X" | | News analysis | "What Y announcement means for you" | | Tool/library roundups | "5 libraries for handling Z" | | Code snippets | "Quick tip: better error handling" | | Community highlights | "Best from our Discord this week" | | Industry takes | "Why I think X is overhyped" | | Behind the scenes | "How we built feature Y" | | Q&A | "You asked, we answered" |
What works for developers:
| Pattern | Example | Why It Works | |---------|---------|--------------| | Specific benefit | "Cut your build time by 40%" | Concrete value | | Technical curiosity | "The JavaScript feature nobody uses" | Triggers curiosity | | Direct announcement | "v2.0 is here: async/await support" | Clear, newsworthy | | Number + topic | "7 TypeScript tricks senior devs use" | Scannable, specific | | Question | "Are you still using callbacks?" | Pattern interrupt | | Breaking news | "React 19 is out: what you need to know" | Timely, urgent |
What doesn't work:
| Avoid | Why | |-------|-----| | ALL CAPS | Spam signals | | "Quick question" | Manipulative | | Excessive emoji | Looks like marketing | | "You won't believe..." | Clickbait fatigue | | No subject line | Just... no |
The preview text after the subject line. Use it.
| Subject | Pre-header | |---------|------------| | "v2.0 is here" | "Plus: breaking changes to watch for" | | "This week in Node.js" | "fetch() drama, npm security, and a cool CLI" |
[Short personal intro - 1-2 sentences]
[Main content sections with clear headers]
[Code snippet if relevant]
[Quick links section]
[Sign-off with personality]
Code rendering is tricky in email. Options:
| Approach | Pros | Cons |
|----------|------|------|
| Inline code (backticks) | Works everywhere | No highlighting |
| Plain text block | Reliable | Ugly |
| Image of code | Beautiful | Can't copy, accessibility issues |
| "View in browser" link | Full formatting | Friction |
| Styled HTML tables | Decent formatting | Complex, can break |
Recommendation: Keep code short. Use inline code for small snippets, link to full examples.
<pre style="background-color: #1e1e1e; color: #d4d4d4; padding: 16px; border-radius: 4px; font-family: 'Fira Code', monospace; font-size: 14px; overflow-x: auto;">
const result = await fetch('/api/data');
</pre>
Test one variable at a time:
| Variable | Version A | Version
tools
Use when a user asks to mine or update a private, evidence-backed work profile from local Claude Code, Codex, Copilot CLI, or OpenCode sessions.
data-ai
Use when diagnosing Android overheating, idle heat, thermal throttling, charging or radio heat, or abnormal battery drain with read-only ADB evidence and approval gates.
research
Research public competitor ads, analyze creative patterns and landing pages, and produce an evidence-labeled strategic teardown.
tools
Compiled CLI covering all 52 endpoints of the Anytype local API — objects, properties, tags, search, chat, files — one binary, no MCP server needed.