{
    "version": "https://jsonfeed.org/version/1",
    "title": "Post Code Labs",
    "home_page_url": "https://postcodelabs.com/",
    "feed_url": "https://postcodelabs.com/feed.json",
    "description": "Post Code helps businesses turn vibe-coded applications into maintainable, extensible production software without starting over.",
    "items": [
        {
            "id": "https://postcodelabs.com/articles/linting-is-not-pedantry-when-an-ai-is-writing-your-code/",
            "content_html": "Why formatting, import rules, naming conventions, and static checks become practical safety systems in AI-heavy workflows.",
            "url": "https://postcodelabs.com/articles/linting-is-not-pedantry-when-an-ai-is-writing-your-code/",
            "title": "Linting Is Not Pedantry When an AI Is Writing Your Code",
            "date_modified": "2026-05-21T01:00:00.000Z",
            "date_published": "2026-05-21T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/your-app-needs-a-constitution-constraints-for-ai-coding-agents/",
            "content_html": "A practical way to turn architectural decisions, naming conventions, data rules, and forbidden patterns into durable project constraints.",
            "url": "https://postcodelabs.com/articles/your-app-needs-a-constitution-constraints-for-ai-coding-agents/",
            "title": "Your App Needs a Constitution: Constraints for AI Coding Agents",
            "date_modified": "2026-04-30T01:00:00.000Z",
            "date_published": "2026-04-30T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/why-your-ai-keeps-reintroducing-the-same-bugs/",
            "content_html": "Recurring bugs are usually signs that the codebase needs executable memory, not longer prompts.",
            "url": "https://postcodelabs.com/articles/why-your-ai-keeps-reintroducing-the-same-bugs/",
            "title": "Why Your AI Keeps Reintroducing the Same Bugs",
            "date_modified": "2026-04-09T01:00:00.000Z",
            "date_published": "2026-04-09T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/ci-cd-is-the-adult-supervision-your-vibe-coded-app-needs/",
            "content_html": "How automated delivery checks turn AI coding from a risky interactive loop into a controlled path to production.",
            "url": "https://postcodelabs.com/articles/ci-cd-is-the-adult-supervision-your-vibe-coded-app-needs/",
            "title": "CI/CD Is the Adult Supervision Your Vibe-Coded App Needs",
            "date_modified": "2026-03-19T01:00:00.000Z",
            "date_published": "2026-03-19T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/the-difference-between-a-demo-and-a-durable-product/",
            "content_html": "Why impressive AI-generated demos still need hardening before they can survive users, edge cases, deployment, and change.",
            "url": "https://postcodelabs.com/articles/the-difference-between-a-demo-and-a-durable-product/",
            "title": "The Difference Between a Demo and a Durable Product",
            "date_modified": "2026-02-26T01:00:00.000Z",
            "date_published": "2026-02-26T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/stop-asking-the-agent-to-refactor-everything-at-once/",
            "content_html": "Large AI-driven refactors usually fail because the context is too broad, the dependencies are hidden, and success is underspecified.",
            "url": "https://postcodelabs.com/articles/stop-asking-the-agent-to-refactor-everything-at-once/",
            "title": "Stop Asking the Agent to Refactor Everything at Once",
            "date_modified": "2026-02-05T01:00:00.000Z",
            "date_published": "2026-02-05T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/why-large-vibe-coded-apps-become-incoherent/",
            "content_html": "Why AI-built apps lose architectural shape as they grow, and how to give agents a map they can follow.",
            "url": "https://postcodelabs.com/articles/why-large-vibe-coded-apps-become-incoherent/",
            "title": "Why Large Vibe-Coded Apps Become Incoherent",
            "date_modified": "2026-01-15T01:00:00.000Z",
            "date_published": "2026-01-15T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/from-prompting-to-engineering-the-maturity-curve-of-ai-built-apps/",
            "content_html": "A practical maturity model for moving AI-built apps from fast prompting to guarded repos, production ownership, and learning systems.",
            "url": "https://postcodelabs.com/articles/from-prompting-to-engineering-the-maturity-curve-of-ai-built-apps/",
            "title": "From Prompting to Engineering: The Maturity Curve of AI-Built Apps",
            "date_modified": "2025-12-18T01:00:00.000Z",
            "date_published": "2025-12-18T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/how-to-know-when-your-vibe-coded-app-has-outgrown-the-vibe/",
            "content_html": "A practical scorecard for the moment when an AI-built prototype needs product maturity, delivery discipline, and a rewrite-versus-remediate plan.",
            "url": "https://postcodelabs.com/articles/how-to-know-when-your-vibe-coded-app-has-outgrown-the-vibe/",
            "title": "How to Know when your Vibe-Coded App has Outgrown the Vibe",
            "date_modified": "2025-11-20T01:00:00.000Z",
            "date_published": "2025-11-20T01:00:00.000Z"
        },
        {
            "id": "https://postcodelabs.com/articles/types-are-memory-for-your-codebase/",
            "content_html": "How TypeScript, schemas, and explicit interfaces act as durable context for both humans and agents.",
            "url": "https://postcodelabs.com/articles/types-are-memory-for-your-codebase/",
            "title": "Types Are Memory for Your Codebase",
            "date_modified": "2025-10-23T01:00:00.000Z",
            "date_published": "2025-10-23T01:00:00.000Z"
        }
    ]
}