{
    "version": "https://jsonfeed.org/version/1",
    "title": "Jason Watmore's Blog",
    "home_page_url": "https://jasonwatmore.com/",
    "feed_url": "https://jasonwatmore.com/json",
    "description": "A Web Developer in Sydney",
    "icon": "https://jasonwatmore.com/_content/images/jason.jpg",
    "author": {
        "name": "Jason Watmore",
        "url": "https://jasonwatmore.com/"
    },
    "items": [
        {
            "id": "https://jasonwatmore.com/search-all-code-in-chrome-dev-tools-sources-tab",
            "url": "https://jasonwatmore.com/search-all-code-in-chrome-dev-tools-sources-tab",
            "title": "Search all code in chrome dev tools sources tab",
            "summary": "Steps to search across all client side code in the Sources tab of Chrome dev tools. Includes all JavaScript, HTML and CSS downloaded to the browser.",
            "date_modified": "2024-03-28T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/npm-pack-for-local-package-dependency-testing",
            "url": "https://jasonwatmore.com/npm-pack-for-local-package-dependency-testing",
            "title": "npm pack for local package dependency testing",
            "summary": "Steps to test npm package dependencies locally without publishing to npm.",
            "date_modified": "2024-03-10T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/javascript-add-business-days-to-date-exclude-holidays-weekends",
            "url": "https://jasonwatmore.com/javascript-add-business-days-to-date-exclude-holidays-weekends",
            "title": "JavaScript - Add Business Days to Date (exclude Holidays & Weekends)",
            "summary": "The below code sample shows how to add business days to a date, excluding weekends and public holidays in any specified country and state/region.",
            "date_modified": "2024-02-03T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/deploy-net-6-api-to-aws-lambda-with-sql-database-rds-and-email-ses",
            "url": "https://jasonwatmore.com/deploy-net-6-api-to-aws-lambda-with-sql-database-rds-and-email-ses",
            "title": "Deploy .NET 6 API to AWS Lambda with SQL Database (RDS) and Email (SES)",
            "summary": "Detailed instructions on how to setup an AWS VPC from scratch then deploy a .NET 6 API to AWS Lambda with a SQL Database on AWS RDS (Relational Database Service) and Email via AWS SES (Amazon Simple Email Service).",
            "date_modified": "2023-08-19T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/typescript-set-type-on-rest-spread-parameter-in-destructured-object-with-ts-interface",
            "url": "https://jasonwatmore.com/typescript-set-type-on-rest-spread-parameter-in-destructured-object-with-ts-interface",
            "title": "TypeScript - Set type on ...rest (spread) parameter in destructured object with TS interface",
            "summary": "The thing I got stuck on was how to define the type for a ...rest parameter in a TypeScript interface.",
            "date_modified": "2023-08-02T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/next-js-13-app-router-mongodb-user-rego-and-login-tutorial-with-example",
            "url": "https://jasonwatmore.com/next-js-13-app-router-mongodb-user-rego-and-login-tutorial-with-example",
            "title": "Next.js 13 + App Router + MongoDB - User Rego and Login Tutorial with Example",
            "summary": "How to build a simple user registration, login and user management (CRUD) application with Next.js 13 (App Router) and MongoDB using TypeScript",
            "date_modified": "2023-07-28T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/vanilla-js-html-encode-in-javascript",
            "url": "https://jasonwatmore.com/vanilla-js-html-encode-in-javascript",
            "title": "Vanilla JS - HTML Encode in JavaScript",
            "summary": "HTML encoding simply replaces HTML special characters like angle brackets with HTML entities so they can be displayed as plain text in a web page.",
            "date_modified": "2023-07-21T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/vanilla-js-slugify-a-string-in-javascript",
            "url": "https://jasonwatmore.com/vanilla-js-slugify-a-string-in-javascript",
            "title": "Vanilla JS - Slugify a String in JavaScript",
            "summary": "A slug is typically all lower case, separated by dashes (hyphens) instead of spaces and doesn't contain any special characters.",
            "date_modified": "2023-07-07T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/next-js-13-fix-for-client-component-use-client-hangs-when-fetching-data-in-useeffect-hook",
            "url": "https://jasonwatmore.com/next-js-13-fix-for-client-component-use-client-hangs-when-fetching-data-in-useeffect-hook",
            "title": "Next.js 13 - Fix for client component ('use client') hangs when fetching data in useEffect hook",
            "summary": "I ran into a weird problem this morning that had me stumped for a few hours. One of my client components was causing Chrome to lock up and max out my CPU without giving me any error message.",
            "date_modified": "2023-06-29T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        },
        {
            "id": "https://jasonwatmore.com/vanilla-js-wrap-object-methods-in-try-catch-to-handle-errors-in-javascript",
            "url": "https://jasonwatmore.com/vanilla-js-wrap-object-methods-in-try-catch-to-handle-errors-in-javascript",
            "title": "Vanilla JS - Wrap Object Methods in Try/Catch to Handle Errors in JavaScript",
            "summary": "I created the below function recently to encapsulate error handling logic for multiple JS object methods in a single place.",
            "date_modified": "2023-06-20T00:00:00.000Z",
            "author": {
                "name": "Jason Watmore",
                "url": "https://jasonwatmore.com/"
            }
        }
    ]
}