Val Town BlogUpdates and articles from the Val Town teamhttps://blog.val.town/An Introduction to OpenAI fine-tuninghttps://blog.val.town/blog/an-introduction-to-openai-fine-tuning/https://blog.val.town/blog/an-introduction-to-openai-fine-tuning/How to customize OpenAI to your likingFri, 25 Aug 2023 00:00:00 GMTSteve KrouseAPI Tokens Scopeshttps://blog.val.town/blog/api-token-scopes/https://blog.val.town/blog/api-token-scopes/Improving security with granular control over permissionsFri, 01 Nov 2024 00:00:00 GMTMax McDonnellBuilding a code-writing robot and keeping it happyhttps://blog.val.town/blog/building-a-code-writing-robot/https://blog.val.town/blog/building-a-code-writing-robot/Our experiences running LLMs in productionFri, 08 Nov 2024 00:00:00 GMTTom MacWrightHow we built Townie – an app that generates fullstack appshttps://blog.val.town/blog/codegen/https://blog.val.town/blog/codegen/Like Claude Artifacts, but with a backend and databaseThu, 22 Aug 2024 00:00:00 GMTJP PosmaDeprecating the Run APIhttps://blog.val.town/blog/deprecating-the-run-api/https://blog.val.town/blog/deprecating-the-run-api/Not every function should be an APIWed, 07 Feb 2024 00:00:00 GMTAndré TerronImproving the Val Editorhttps://blog.val.town/blog/editor-redesign/https://blog.val.town/blog/editor-redesign/Designing the core UI of editingMon, 11 Dec 2023 00:00:00 GMTTom MacWrightEnd-programmer Programminghttps://blog.val.town/blog/end-programmer-programming/https://blog.val.town/blog/end-programmer-programming/A reflection on the goal of making programming for everyone.Tue, 08 Nov 2022 00:00:00 GMTSteve KrouseExpanding the Vals API - RFChttps://blog.val.town/blog/expanding-the-vals-api-rfc/https://blog.val.town/blog/expanding-the-vals-api-rfc/Our REST API lets you do a lot - and soon it will enable moreFri, 30 Jun 2023 00:00:00 GMTAndré TerronVal Town + Fal Partnershiphttps://blog.val.town/blog/fal/https://blog.val.town/blog/fal/Bringing lightning fast AI image generation to Val TownThu, 31 Oct 2024 00:00:00 GMTSteve KrouseMoving from express to fastify, pt 1https://blog.val.town/blog/fastify/https://blog.val.town/blog/fastify/How switching to Fastify let us embrace runtime and compile-time typesTue, 02 Jul 2024 00:00:00 GMTTom MacWrightThe first four Val Town runtimeshttps://blog.val.town/blog/first-four-val-town-runtimes/https://blog.val.town/blog/first-four-val-town-runtimes/From vm to vm2 to workers to processes, the long journey to how we run vals todayThu, 08 Feb 2024 00:00:00 GMTTom MacWrightNew HTTP Val Runtime in Previewhttps://blog.val.town/blog/http-preview/https://blog.val.town/blog/http-preview/We built a new runtime for HTTP vals that is up to 5x faster at scaleWed, 17 Jul 2024 00:00:00 GMTMax McDonnellHTTP Streaming in Val Townhttps://blog.val.town/blog/http-streaming/https://blog.val.town/blog/http-streaming/Val Town supports HTTP streaming for streaming LLMs, large requests and responses, and server-sent eventsThu, 13 Jun 2024 00:00:00 GMTMax McDonnellIntroducing val.runhttps://blog.val.town/blog/introducing-val-run/https://blog.val.town/blog/introducing-val-run/Increasing the security of Val Town by isolating domains.Fri, 23 Jun 2023 00:00:00 GMTSteve KrouseIntroducing Val Town v3https://blog.val.town/blog/introducing-val-town-v3/https://blog.val.town/blog/introducing-val-town-v3/Our move to embrace web standardsTue, 03 Oct 2023 00:00:00 GMTSteve KrouseHow we lock your dependencieshttps://blog.val.town/blog/lockfiles/https://blog.val.town/blog/lockfiles/Adding lockfiles to Val Town for stability, security, and performance.Fri, 23 Aug 2024 00:00:00 GMTMax McDonnellMigrating from Supabasehttps://blog.val.town/blog/migrating-from-supabase/https://blog.val.town/blog/migrating-from-supabase/Our journey from Supabase to Postgres and RenderFri, 19 May 2023 00:00:00 GMTTom MacWrightWhy is spawning a new process in Node so slow?https://blog.val.town/blog/node-spawn-performance/https://blog.val.town/blog/node-spawn-performance/At Val Town we spawn a lot of processes. We're working on making it fasterFri, 19 Jul 2024 00:00:00 GMTMax McDonnellThe perks of a good OpenAPI spechttps://blog.val.town/blog/openapi/https://blog.val.town/blog/openapi/Taking advantage of our typed REST API to build a platform around Val Town. Thu, 25 Jul 2024 00:00:00 GMTTom MacWrightJoining the Open Source Pledgehttps://blog.val.town/blog/oss/https://blog.val.town/blog/oss/We donated $9,600 to open-source!Fri, 30 Aug 2024 00:00:00 GMTTom MacWrightPost-mortem: Blob Storage Outagehttps://blog.val.town/blog/post-mortem-blob-storage-outage/https://blog.val.town/blog/post-mortem-blob-storage-outage/Disclosure, mitigation, and next stepsThu, 02 May 2024 00:00:00 GMTMax McDonnellPost-mortem: SQLite data sharinghttps://blog.val.town/blog/post-mortem-sqlite-data-sharing/https://blog.val.town/blog/post-mortem-sqlite-data-sharing/Disclosing and fixing a recent security issueFri, 24 Nov 2023 00:00:00 GMTSteve KrousePublic Key Auth: Val Town users can be your usershttps://blog.val.town/blog/public-key-auth-val-town-users-can-be-your-users/https://blog.val.town/blog/public-key-auth-val-town-users-can-be-your-users/A novel authorization scheme for Val TownTue, 27 Jun 2023 00:00:00 GMTSteve KrouseRedesigning Val Pageshttps://blog.val.town/blog/redesigning-val-pages/https://blog.val.town/blog/redesigning-val-pages/A more understandable entry-point to Val TownWed, 01 May 2024 00:00:00 GMTTom MacWrightRestricted Library Modehttps://blog.val.town/blog/restricted-library-mode/https://blog.val.town/blog/restricted-library-mode/Evolving Val Town’s security modelThu, 04 May 2023 00:00:00 GMTSteve KrouseCode Search is Hardhttps://blog.val.town/blog/search-notes/https://blog.val.town/blog/search-notes/Searching code at scale without employing a search team is hardWed, 10 Apr 2024 00:00:00 GMTTom MacWrightSecurity Disclosure 1https://blog.val.town/blog/security-disclosure-1/https://blog.val.town/blog/security-disclosure-1/Replacing our sandbox in response to a security disclosureFri, 13 Jan 2023 00:00:00 GMTSteve KrouseSecurity Disclosure 2https://blog.val.town/blog/security-disclosure-2/https://blog.val.town/blog/security-disclosure-2/Missing permissions-checking in our internal save endpointThu, 01 Aug 2024 00:00:00 GMTTom MacWrightVal Town's Seed Roundhttps://blog.val.town/blog/seed/https://blog.val.town/blog/seed/We raised $5.5m to make programming fun, accessible, and collaborative.Tue, 09 Apr 2024 00:00:00 GMTSteve KrouseThe API we forgot to namehttps://blog.val.town/blog/the-api-we-forgot-to-name/https://blog.val.town/blog/the-api-we-forgot-to-name/An API that takes a Request and returns a Response - what was that, again?Thu, 19 Oct 2023 00:00:00 GMTSteve KrouseIntroducing Townie AIhttps://blog.val.town/blog/townie/https://blog.val.town/blog/townie/Meet Townie, our AI assistant that helps you ship apps fastThu, 26 Sep 2024 00:00:00 GMTSteve KrouseZod is amazing. Here’s why we're also using TypeBoxhttps://blog.val.town/blog/typebox/https://blog.val.town/blog/typebox/Why we’re using TypeBox instead of Zod for our server validation layerMon, 15 Jul 2024 00:00:00 GMTTom MacWrightVal Town Newsletter 0https://blog.val.town/blog/val-town-newsletter-0/https://blog.val.town/blog/val-town-newsletter-0/Smarter typeahead, tutorials, much more.Tue, 20 Sep 2022 00:00:00 GMTSteve KrouseVal Town Newsletter 1https://blog.val.town/blog/val-town-newsletter-1/https://blog.val.town/blog/val-town-newsletter-1/Programmatic notifications, Hacker News API, and more.Wed, 04 Jan 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 10https://blog.val.town/blog/val-town-newsletter-10/https://blog.val.town/blog/val-town-newsletter-10/A year of Val Town!Wed, 05 Jul 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 11https://blog.val.town/blog/val-town-newsletter-11/https://blog.val.town/blog/val-town-newsletter-11/Hiring, podcasts, and more!Mon, 31 Jul 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 12https://blog.val.town/blog/val-town-newsletter-12/https://blog.val.town/blog/val-town-newsletter-12/Product Hunt, v3 in development, and moreTue, 05 Sep 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 13https://blog.val.town/blog/val-town-newsletter-13/https://blog.val.town/blog/val-town-newsletter-13/SQLite, Blob Storage, updates to how Vals are named, and moreTue, 28 Nov 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 14https://blog.val.town/blog/val-town-newsletter-14/https://blog.val.town/blog/val-town-newsletter-14/Pull Requests, Val Editor Redesign, AI Suggestions, OSS Docs, New Astro Blog, TemplatesFri, 15 Dec 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 15https://blog.val.town/blog/val-town-newsletter-15/https://blog.val.town/blog/val-town-newsletter-15/Custom domains, Logs 3.0, Faster HTTP responses, Status page & much more!Tue, 13 Feb 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 16https://blog.val.town/blog/val-town-newsletter-16/https://blog.val.town/blog/val-town-newsletter-16/Our seed round, growing team, Codeium completions, @std/openai, and moreMon, 22 Apr 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 17https://blog.val.town/blog/val-town-newsletter-17/https://blog.val.town/blog/val-town-newsletter-17/Improved performance, redesigned val page, live coding, and much more!Wed, 29 May 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 18https://blog.val.town/blog/val-town-newsletter-18/https://blog.val.town/blog/val-town-newsletter-18/HTTP Streaming, Semantic Search, Townie AI Chat, and a TypeScript SDKTue, 25 Jun 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 19https://blog.val.town/blog/val-town-newsletter-19/https://blog.val.town/blog/val-town-newsletter-19/Full-screen Editor, 5x faster HTTP vals, new Dashboard, improved Search, Townie redesign, Trending redesign, Profile filters, and more!Tue, 23 Jul 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 2https://blog.val.town/blog/val-town-newsletter-2/https://blog.val.town/blog/val-town-newsletter-2/Your monthly update of cool vals!Mon, 23 Jan 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 20https://blog.val.town/blog/val-town-newsletter-20/https://blog.val.town/blog/val-town-newsletter-20/Townie AI, Faster vals, and LockfilesSat, 07 Sep 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 21https://blog.val.town/blog/val-town-newsletter-21/https://blog.val.town/blog/val-town-newsletter-21/Townie upgrades & faster HTTP valsFri, 11 Oct 2024 00:00:00 GMTSteve KrouseVal Town Newsletter 3https://blog.val.town/blog/val-town-newsletter-3/https://blog.val.town/blog/val-town-newsletter-3/Expanding our founding teamTue, 07 Feb 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 4https://blog.val.town/blog/val-town-newsletter-4/https://blog.val.town/blog/val-town-newsletter-4/Rebuilding on Deno, HTML emails, and moreThu, 02 Mar 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 5https://blog.val.town/blog/val-town-newsletter-5/https://blog.val.town/blog/val-town-newsletter-5/Shipping our Deno runtimeThu, 23 Mar 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 6https://blog.val.town/blog/val-town-newsletter-6/https://blog.val.town/blog/val-town-newsletter-6/Lots of little updates!Fri, 07 Apr 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 7https://blog.val.town/blog/val-town-newsletter-7/https://blog.val.town/blog/val-town-newsletter-7/Moving off of Supabase and enhancing our security with restricted library modeMon, 15 May 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 8https://blog.val.town/blog/val-town-newsletter-8/https://blog.val.town/blog/val-town-newsletter-8/Announcing Val Town ProWed, 31 May 2023 00:00:00 GMTSteve KrouseVal Town Newsletter 9https://blog.val.town/blog/val-town-newsletter-9/https://blog.val.town/blog/val-town-newsletter-9/Refactoring the core component of Val Town for better performance.Tue, 20 Jun 2023 00:00:00 GMTSteve KrouseVal Town Townhttps://blog.val.town/blog/val-town-town/https://blog.val.town/blog/val-town-town/Can we implement Val Town on Val Town?Fri, 01 Nov 2024 00:00:00 GMTMax McDonnellVal Vibes: Semantic search in Val Townhttps://blog.val.town/blog/val-vibes/https://blog.val.town/blog/val-vibes/How to build semantic search with embeddings for Val Town within Val Town itselfTue, 18 Jun 2024 00:00:00 GMTJP Posma