Quick tech notes and useful hacks.
Tech Notes to Self
course-portal-backend-with-claude-code
Writer’s Brief The Hook I built the entire backend for a live course portal - curriculum sync, progress tracking, admin panel with user invites - in a single afternoon, mostly by describing what I wanted in English. Main Points to Cover The “single source of truth” pattern: edit one JSON file, everything updates (dashboard, week pages, Supabase database). One command to deploy. The debugging story: inline checkboxes wouldn’t load because let variables don’t go on window in JavaScript. Used Chrome browser automation from inside Claude Code to diagnose it live. The admin invite flow: “I want to add someone who doesn’t exist yet” - Claude built a Supabase admin API integration that pre-creates user accounts so they link up automatically when the person signs in with Google. The Angle Personal discovery. The backend grew organically from “I need to edit curriculum in one place” to “wait, why aren’t these synced?” to “I need to add people before they sign up.” Each step was a natural next question, not a planned architecture. ...
essay-pipeline-top-5-review
fixing-dead-blog-links-seo-pass-hugo-cloudflare
full-blog-seo-geo-overhaul-session
ghostwriting-linkedin-post-for-ceo
Step-by-Step Tutorial What This Does Research a podcast guest’s social media presence across platforms, analyze their actual posting style, and draft LinkedIn copy that sounds like them—not like a marketing team wrote it. The Prompts Research phase: Can you research the details for [Guest] across social platforms and for [Company] across socials? And what other channels they might have - email newsletters etc Voice analysis: Can you search thru what [Guest] posts on his own LinkedIn to see if we have precedent for how to do this? Drafting: ...
gmail-mcp-claude-code
Step-by-Step Tutorial What This Does Connects your Gmail account to Claude Code via an MCP server so Claude can read, search, and manage your emails directly from the command line. The Prompt Help me set up Gmail MCP for Claude Code. I already created a Google Cloud project and I'm on the credentials page. What Claude Does Finds your earlier research notes about Gmail API integration Walks you through enabling Gmail API in Google Cloud Console Guides OAuth consent screen setup Helps you download and configure OAuth credentials Installs and configures the GongRzhe Gmail AutoAuth MCP server Adds the MCP server to your Claude Code config Troubleshoots the “Access blocked” error by having you add yourself as a test user Confirms successful auth after restart
granola-to-client-pipeline
Writer’s brief The hook I had a call yesterday with a potential new client and by this morning I had a full proposal drafted, without touching a single app manually. Main points to cover Granola records calls locally and caches transcripts - you can pull them programmatically even if the sync fails Claude Code can search Slack, find the relevant conversations about a deal, and synthesize context from multiple threads Going from raw transcript to structured proposal deliverables is a 15-minute workflow when the AI has access to your communication history The angle The “AI assistant” thing people talk about actually working in practice. Not hypothetical, not a demo. A real client call, a real proposal, real Slack threads. ...