|
| 1 | +# Content Calendar - Node.js Design Patterns Blog |
| 2 | + |
| 3 | +**Publishing cadence:** 2 articles/month |
| 4 | +**Primary goal:** SEO traffic → Build authority → Drive book sales |
| 5 | +**Content approach:** Original content with light book excerpts |
| 6 | + |
| 7 | +--- |
| 8 | + |
| 9 | +## Content Pillars |
| 10 | + |
| 11 | +1. **Node.js Core APIs & Built-ins** - High-volume foundational topics |
| 12 | +2. **Modern Node.js Features** - New capabilities (22+, 23+) with early-mover SEO advantage |
| 13 | +3. **Node.js Patterns & Architecture** - Advanced patterns (light connection to book) |
| 14 | + |
| 15 | +--- |
| 16 | + |
| 17 | +## 12-Month Calendar |
| 18 | + |
| 19 | +### Month 1-2: Foundation |
| 20 | + |
| 21 | +| # | Status | Article | Primary Keyword | Est. Volume | Pillar | |
| 22 | +| --- | ----------- | -------------------------------- | ------------------------------- | ----------- | --------- | |
| 23 | +| 1 | COMPLETE | **HTTP request in Node.js** | "node js http request" | 15,000+ | Core APIs | |
| 24 | +| 2 | NOT STARTED | Environment variables in Node.js | "node js environment variables" | 8,000+ | Core APIs | |
| 25 | +| 3 | NOT STARTED | Using Node.js built-in SQLite | "node js sqlite" | 5,000+ | Modern | |
| 26 | +| 4 | NOT STARTED | Writing a CLI with Node.js | "node js cli" | 4,000+ | Core APIs | |
| 27 | + |
| 28 | +### Month 3-4: Core APIs |
| 29 | + |
| 30 | +| # | Status | Article | Primary Keyword | Est. Volume | Pillar | |
| 31 | +| --- | ----------- | ------------------------------- | --------------------- | ----------- | --------- | |
| 32 | +| 5 | NOT STARTED | API server in Node.js (no deps) | "node js http server" | 6,000+ | Core APIs | |
| 33 | +| 6 | NOT STARTED | Hashing files with Node.js | "node js hash file" | 2,000+ | Core APIs | |
| 34 | +| 7 | NOT STARTED | Base64 encode/decode | "base64 node js" | 3,000+ | Core APIs | |
| 35 | +| 8 | NOT STARTED | Files and paths (node:path) | "node js path" | 4,000+ | Core APIs | |
| 36 | + |
| 37 | +### Month 5-6: Patterns (Book-Adjacent) |
| 38 | + |
| 39 | +| # | Status | Article | Primary Keyword | Est. Volume | Pillar | |
| 40 | +| --- | ----------- | --------------------------- | ----------------------- | ----------- | --------- | |
| 41 | +| 9 | NOT STARTED | Node.js Event Emitter guide | "node js event emitter" | 6,000+ | Patterns | |
| 42 | +| 10 | NOT STARTED | Interactive streams guide | "node js streams" | 10,000+ | Patterns | |
| 43 | +| 11 | NOT STARTED | How CommonJS works | "commonjs node js" | 3,000+ | Patterns | |
| 44 | +| 12 | NOT STARTED | Node.js console tips | "node js console" | 2,000+ | Core APIs | |
| 45 | + |
| 46 | +### Month 7-8: Modern Node.js |
| 47 | + |
| 48 | +| # | Status | Article | Primary Keyword | Est. Volume | Pillar | |
| 49 | +| --- | ----------- | ----------------------------- | ---------------------- | ----------- | --------- | |
| 50 | +| 13 | NOT STARTED | Type-stripping in Node.js | "node js typescript" | Growing | Modern | |
| 51 | +| 14 | NOT STARTED | Node.js built-in test runner | "node js test runner" | 3,000+ | Modern | |
| 52 | +| 15 | NOT STARTED | Import maps in Node.js | "node js import maps" | 1,000+ | Modern | |
| 53 | +| 16 | NOT STARTED | Encrypting files with Node.js | "node js encrypt file" | 1,500+ | Core APIs | |
| 54 | + |
| 55 | +### Month 9-12: Advanced & Experimental |
| 56 | + |
| 57 | +| # | Status | Article | Primary Keyword | Notes | |
| 58 | +| --- | ----------- | ------------------------------ | --------------- | --------------------- | |
| 59 | +| 17+ | NOT STARTED | Rust/Zig + Node.js integration | niche | Thought leadership | |
| 60 | +| 18+ | NOT STARTED | TBD based on analytics | TBD | Iterate based on data | |
| 61 | + |
| 62 | +--- |
| 63 | + |
| 64 | +## Existing Content |
| 65 | + |
| 66 | +| Topic | Coverage | Link | |
| 67 | +| ------------------------ | -------- | -------------------------------------------------------- | |
| 68 | +| Reading/writing files | COMPLETE | /blog/reading-writing-files-nodejs | |
| 69 | +| Stream consumers | COMPLETE | /blog/node-js-stream-consumer | |
| 70 | +| Async iterators | COMPLETE | /blog/javascript-async-iterators | |
| 71 | +| Race conditions | COMPLETE | /blog/node-js-race-conditions | |
| 72 | +| Checking Node.js version | COMPLETE | /blog/checking-node-js-version | |
| 73 | +| Installing Node.js | UPDATED | /blog/5-ways-to-install-node-js | |
| 74 | +| Docker development | COMPLETE | /blog/node-js-development-with-docker-and-docker-compose | |
| 75 | + |
| 76 | +--- |
| 77 | + |
| 78 | +## Internal Linking Map |
| 79 | + |
| 80 | +``` |
| 81 | +HTTP Requests |
| 82 | + └── links to → API Server (no deps) |
| 83 | + └── links to → Reading/Writing Files (existing) |
| 84 | +
|
| 85 | +Environment Variables |
| 86 | + └── links to → CLI with parseArgs |
| 87 | +
|
| 88 | +Files & Paths |
| 89 | + └── links to → Reading/Writing Files (existing) |
| 90 | + └── links to → Hashing Files |
| 91 | + └── links to → Encrypting Files |
| 92 | +
|
| 93 | +Streams Guide |
| 94 | + └── links to → Stream Consumer (existing) |
| 95 | + └── links to → Async Iterators (existing) |
| 96 | + └── links to → Reading/Writing Files (existing) |
| 97 | +
|
| 98 | +Event Emitter |
| 99 | + └── links to → Streams Guide |
| 100 | + └── links to → Race Conditions (existing) |
| 101 | +
|
| 102 | +Installing Node.js |
| 103 | + └── links to → Checking Node.js version (existing) |
| 104 | + └── links to → Docker development (existing) |
| 105 | +``` |
| 106 | + |
| 107 | +--- |
| 108 | + |
| 109 | +## Quick Wins Checklist |
| 110 | + |
| 111 | +- [x] Add FAQ schema support to blog layout |
| 112 | +- [x] Update "5 Ways to Install Node.js" with fnm, Volta, Docker |
| 113 | +- [x] Cross-link existing articles |
| 114 | +- [x] Add CTAs for free chapter download to all posts |
| 115 | +- [ ] Monitor keyword rankings for existing content |
| 116 | +- [ ] A/B test CTA placements |
| 117 | + |
| 118 | +--- |
| 119 | + |
| 120 | +## Notes |
| 121 | + |
| 122 | +- Focus on zero-dependency approaches using modern Node.js built-ins |
| 123 | +- Most competing articles still recommend axios/got first - opportunity to differentiate |
| 124 | +- New Node.js features (22+, 23+) have early-mover advantage |
| 125 | +- Light book excerpts where relevant (Ch 6 streams, Ch 10 testing) |
0 commit comments