<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://bryanortiz.com</loc>
<lastmod>2026-04-21T21:04:53.125Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://bryanortiz.com/guides</loc>
<lastmod>2026-04-21T21:04:53.125Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://bryanortiz.com/tools</loc>
<lastmod>2026-04-21T21:04:53.125Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal</loc>
<lastmod>2026-04-21T21:04:53.125Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/how-i-cut-my-ai-token-costs-without-switching-models</loc>
<lastmod>2026-04-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/thoughts-on-kimi-k2-and-using-openrouter-for-model-diversity</loc>
<lastmod>2026-04-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/openrouter-the-api-router-every-ai-developer-should-know-about</loc>
<lastmod>2026-04-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/from-zero-to-running-core-in-ten-minutes</loc>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-an-ai-coaching-platform-that-runs-anywhere</loc>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/why-product-discovery-is-broken</loc>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/theguard-cli-the-commands-that-matter</loc>
<lastmod>2026-04-06T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/from-one-ai-tool-to-six-how-theguard-adapts-to-any-coding-agent</loc>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/email-2fa-for-ai-agents-why-the-code-never-touches-the-terminal</loc>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/18-platforms-170-rules-building-a-security-pattern-registry</loc>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/the-mcp-proxy-guarding-every-ai-tool-from-one-place</loc>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-theguard-ai-failsafe-system</loc>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/loop-detection-when-ai-agents-go-in-circles</loc>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/the-state-of-javascript-runtimes-in-2025</loc>
<lastmod>2025-11-17T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/webassembly-beyond-the-browser-wasi-and-the-component-model</loc>
<lastmod>2025-09-22T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/tanstack-start-fullstack-typescript-with-tanstack-router</loc>
<lastmod>2025-07-14T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/running-llms-locally-ollama-and-the-open-source-model-ecosystem</loc>
<lastmod>2025-05-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/rust-powered-javascript-tooling-the-speed-revolution</loc>
<lastmod>2025-03-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/react-19-and-the-actions-pattern</loc>
<lastmod>2025-01-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/the-year-ai-changed-how-i-write-code</loc>
<lastmod>2024-12-30T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/hono-the-ultrafast-framework-for-every-javascript-runtime</loc>
<lastmod>2024-10-14T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-rag-pipelines-vector-search-in-production</loc>
<lastmod>2024-08-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/drizzle-orm-sql-in-typescript-without-the-abstraction-tax</loc>
<lastmod>2024-06-17T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/signals-the-state-primitive-taking-over-javascript-frameworks</loc>
<lastmod>2024-04-08T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/shadcn-ui-the-component-library-that-isnt-a-library</loc>
<lastmod>2024-02-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/biome-one-toolchain-to-replace-eslint-and-prettier</loc>
<lastmod>2023-12-11T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/modern-css-in-2023-container-queries-has-and-native-nesting</loc>
<lastmod>2023-10-23T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/bun-an-all-in-one-javascript-runtime</loc>
<lastmod>2023-09-18T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/astro-the-content-framework-with-islands-architecture</loc>
<lastmod>2023-07-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/htmx-the-library-that-made-me-rethink-spas</loc>
<lastmod>2023-05-15T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-my-first-llm-powered-app-with-the-openai-api</loc>
<lastmod>2023-03-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/sveltekit-full-stack-web-development-with-svelte</loc>
<lastmod>2022-12-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/zod-runtime-type-checking-that-typescript-should-have-built-in</loc>
<lastmod>2022-10-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/react-18-concurrent-features-and-what-they-mean</loc>
<lastmod>2022-08-15T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/edge-computing-with-cloudflare-workers</loc>
<lastmod>2022-06-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/trpc-full-stack-type-safety-without-graphql</loc>
<lastmod>2022-04-25T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/monorepos-with-turborepo-scaling-a-multi-package-codebase</loc>
<lastmod>2022-02-14T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/remix-server-side-react-that-respects-the-web-platform</loc>
<lastmod>2021-12-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/smart-contracts-and-solidity-my-first-web3-project</loc>
<lastmod>2021-11-08T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/svelte-the-disappearing-framework</loc>
<lastmod>2021-09-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/rust-for-javascript-developers-first-steps</loc>
<lastmod>2021-07-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/prisma-the-nodejs-orm-that-finally-gets-it-right</loc>
<lastmod>2021-05-17T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/vite-why-i-ditched-webpack-and-never-looked-back</loc>
<lastmod>2021-03-08T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/websockets-in-production-real-time-data-with-socketio</loc>
<lastmod>2020-12-14T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/github-actions-ci-cd-that-lives-where-your-code-does</loc>
<lastmod>2020-10-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/typescript-4-and-the-features-that-actually-matter</loc>
<lastmod>2020-08-31T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/deno-a-fresh-take-on-server-side-javascript</loc>
<lastmod>2020-06-15T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/nextjs-the-react-framework-that-handles-the-hard-parts</loc>
<lastmod>2020-04-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/tailwind-css-and-the-case-for-utility-first-styling</loc>
<lastmod>2020-02-24T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/css-grid-the-layout-system-that-changed-everything</loc>
<lastmod>2019-12-02T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/serverless-functions-on-aws-lambda</loc>
<lastmod>2019-10-07T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/docker-for-web-developers-containers-without-the-complexity</loc>
<lastmod>2019-08-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/graphql-in-practice-what-rest-doesnt-tell-you</loc>
<lastmod>2019-06-17T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/why-i-finally-made-the-jump-to-typescript</loc>
<lastmod>2019-04-22T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/react-hooks-changed-how-i-think-about-state</loc>
<lastmod>2019-02-18T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-an-angular-app-part-4</loc>
<lastmod>2018-10-29T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-an-angular-app-part-3</loc>
<lastmod>2018-10-21T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-an-angular-app-part-2</loc>
<lastmod>2018-10-16T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-mean</loc>
<lastmod>2018-10-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/do-you-know-a-turing-complete-language</loc>
<lastmod>2018-09-28T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/tips-jquery</loc>
<lastmod>2018-09-25T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/tips-rails-db-fun</loc>
<lastmod>2018-09-18T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/lambdas-vs-procs-vs-blocks</loc>
<lastmod>2018-09-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/single-responsibility-principle</loc>
<lastmod>2018-09-04T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/swift-syntax-tips</loc>
<lastmod>2018-08-28T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/javascript-variables</loc>
<lastmod>2018-08-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/quip-tip-how-to-delete-commands-from-your-bash-terminal-history</loc>
<lastmod>2018-08-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/is-gaming-doomed-for-apple</loc>
<lastmod>2018-08-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/git-stash</loc>
<lastmod>2018-04-25T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/building-a-serverless-website-with-s3</loc>
<lastmod>2018-04-02T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/the-webs-many-shades-and-your-worth</loc>
<lastmod>2018-03-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/working-smarter-not-harder</loc>
<lastmod>2018-02-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://bryanortiz.com/journal/to-wordpress-or-to-not-wordpress</loc>
<lastmod>2018-02-02T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
</urlset>
