<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Andrew Detwiler</title>
    <description>The latest articles on DEV Community by Andrew Detwiler (@adetwiler).</description>
    <link>https://dev.to/adetwiler</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3922665%2Ffdf60ec6-b193-4000-bb7c-16ba8695faa6.jpg</url>
      <title>DEV Community: Andrew Detwiler</title>
      <link>https://dev.to/adetwiler</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/adetwiler"/>
    <language>en</language>
    <item>
      <title>Give the Agent a Memory Before You Give It a Task</title>
      <dc:creator>Andrew Detwiler</dc:creator>
      <pubDate>Mon, 13 Jul 2026 16:31:05 +0000</pubDate>
      <link>https://dev.to/adetwiler/give-the-agent-a-memory-before-you-give-it-a-task-4p8g</link>
      <guid>https://dev.to/adetwiler/give-the-agent-a-memory-before-you-give-it-a-task-4p8g</guid>
      <description>&lt;p&gt;Every AI coding session starts the same way.&lt;/p&gt;

&lt;p&gt;The agent knows nothing about your project. Not the decision you made last&lt;br&gt;
Tuesday. Not the migration that burned you. Not the naming convention you&lt;br&gt;
finally settled on.&lt;/p&gt;

&lt;p&gt;So you re-explain. Every session. Or worse, you don't, and the agent makes&lt;br&gt;
a mistake you already paid for once.&lt;/p&gt;
&lt;h2&gt;
  
  
  The fix is boring
&lt;/h2&gt;

&lt;p&gt;It's not a smarter model. It's not a bigger context window. It's writing&lt;br&gt;
things down, in the repo, where the work happens.&lt;/p&gt;

&lt;p&gt;I keep three kinds of files in every serious project now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A short operating manual the agent always loads. Rules only. If it grows
past a page, something moves out.&lt;/li&gt;
&lt;li&gt;Decision records. One small file per locked decision, with the why. The why
is the part you forget first.&lt;/li&gt;
&lt;li&gt;A gotchas file. Every time something non-obvious bites me, it gets a line
right then. If I save it for later, it never happens.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's it. Plain markdown. No tooling, no framework, nothing to install.&lt;/p&gt;
&lt;h2&gt;
  
  
  What changed for me
&lt;/h2&gt;

&lt;p&gt;Honestly, the difference is bigger than any model upgrade I've tried.&lt;/p&gt;

&lt;p&gt;A fresh session reads the manual and starts acting like it was here last week.&lt;br&gt;
It follows conventions I never mentioned in the prompt. It skips the mistakes I already&lt;br&gt;
made once, because they're written down.&lt;/p&gt;

&lt;p&gt;And the strange part: the notes made me better too. Writing "we decided X&lt;br&gt;
because Y" forces you to actually have a Y.&lt;/p&gt;
&lt;h2&gt;
  
  
  A starter file
&lt;/h2&gt;

&lt;p&gt;Drop this in your repo as &lt;code&gt;AGENTS.md&lt;/code&gt; and edit it honestly:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# Operating manual&lt;/span&gt;

&lt;span class="gu"&gt;## What this project is&lt;/span&gt;
One sentence. What it does, who it's for.

&lt;span class="gu"&gt;## Rules that are always true&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Commands: how to run dev, tests, build.
&lt;span class="p"&gt;-&lt;/span&gt; The one or two conventions people keep getting wrong.

&lt;span class="gu"&gt;## Decisions (the why matters)&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; 2026-07-12: We use X instead of Y because Z.

&lt;span class="gu"&gt;## Gotchas&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; The thing that bit us, and what to do instead.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Start smaller than feels right. A pile of docs nobody maintains is worse than&lt;br&gt;
one page that's true.&lt;/p&gt;

&lt;h2&gt;
  
  
  What are you writing down?
&lt;/h2&gt;

&lt;p&gt;I'm still figuring out where the line is between useful memory and busywork.&lt;br&gt;
If you're doing something like this in your own projects, I'd honestly love&lt;br&gt;
to hear what you keep and what you throw away.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>programming</category>
    </item>
    <item>
      <title>How I’m Building Personal Apps With AI, Next.js, SQLite, and Tailscale</title>
      <dc:creator>Andrew Detwiler</dc:creator>
      <pubDate>Sun, 10 May 2026 02:04:02 +0000</pubDate>
      <link>https://dev.to/adetwiler/how-im-building-personal-apps-with-ai-nextjs-sqlite-and-tailscale-2n40</link>
      <guid>https://dev.to/adetwiler/how-im-building-personal-apps-with-ai-nextjs-sqlite-and-tailscale-2n40</guid>
      <description>&lt;p&gt;For years, building custom software felt like something reserved for startups, funded teams, or companies with dedicated infrastructure.&lt;/p&gt;

&lt;p&gt;That’s changing fast.&lt;/p&gt;

&lt;p&gt;Today, you can build fully custom personal apps for yourself, your family, or a small team in an afternoon using AI. You don’t need cloud infrastructure. You don’t need Kubernetes. You don’t even need to deploy anything publicly.&lt;/p&gt;

&lt;p&gt;You can run modern web apps entirely on your own machine or on a small dedicated computer in your house, securely, and install them on your phone like native apps.&lt;/p&gt;

&lt;p&gt;I’ve been doing this myself for budgeting tools, meal planning apps, grocery lists, internal dashboards, and small tools that help organize things at home.&lt;/p&gt;

&lt;p&gt;And honestly, it works incredibly well. Most of these apps would have never been worth building for me a few years ago.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqix2bj4j2aug1r28f2b9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqix2bj4j2aug1r28f2b9.png" alt="Food Planner app" width="800" height="828"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  The Shift Happening Right Now
&lt;/h1&gt;

&lt;p&gt;The biggest change isn’t just AI generating code.&lt;/p&gt;

&lt;p&gt;It’s that the combination of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI coding models&lt;/li&gt;
&lt;li&gt;Modern frameworks like Next.js&lt;/li&gt;
&lt;li&gt;SQLite&lt;/li&gt;
&lt;li&gt;Progressive Web Apps (PWAs)&lt;/li&gt;
&lt;li&gt;Tailscale&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;has lowered the barrier so much that building personal software is now practical for regular developers.&lt;/p&gt;

&lt;p&gt;You no longer need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS infrastructure&lt;/li&gt;
&lt;li&gt;complicated authentication systems&lt;/li&gt;
&lt;li&gt;production-grade distributed databases&lt;/li&gt;
&lt;li&gt;app store deployments&lt;/li&gt;
&lt;li&gt;expensive SaaS subscriptions for every tiny need&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If your app is only for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;yourself&lt;/li&gt;
&lt;li&gt;your family&lt;/li&gt;
&lt;li&gt;your friend group&lt;/li&gt;
&lt;li&gt;a small team&lt;/li&gt;
&lt;li&gt;your local business&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;you can simplify almost everything.&lt;/p&gt;

&lt;p&gt;And simplification changes the game.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjwg6qsybnef71fd30mv7.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjwg6qsybnef71fd30mv7.jpg" alt=" " width="800" height="753"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  What You’ll Need
&lt;/h1&gt;

&lt;p&gt;The stack is intentionally minimal.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. AI Coding Tool
&lt;/h2&gt;

&lt;p&gt;You can use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ChatGPT&lt;/li&gt;
&lt;li&gt;Claude&lt;/li&gt;
&lt;li&gt;Cursor&lt;/li&gt;
&lt;li&gt;Windsurf&lt;/li&gt;
&lt;li&gt;anything capable of generating and modifying code&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is really the only paid part depending on the model you use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flmd9sgvhf1rdtbxkmyl8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flmd9sgvhf1rdtbxkmyl8.jpg" alt=" " width="800" height="1738"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Next.js
&lt;/h2&gt;

&lt;p&gt;Next.js is perfect for this.&lt;/p&gt;

&lt;p&gt;You get:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;frontend&lt;/li&gt;
&lt;li&gt;backend API routes&lt;/li&gt;
&lt;li&gt;server rendering&lt;/li&gt;
&lt;li&gt;static assets&lt;/li&gt;
&lt;li&gt;routing&lt;/li&gt;
&lt;li&gt;PWA support&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;all in one project.&lt;/p&gt;

&lt;p&gt;No separate backend required.&lt;/p&gt;




&lt;h1&gt;
  
  
  3. SQLite
&lt;/h1&gt;

&lt;p&gt;For personal apps, SQLite is massively underrated.&lt;/p&gt;

&lt;p&gt;You do not need Postgres for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;grocery lists&lt;/li&gt;
&lt;li&gt;meal planners&lt;/li&gt;
&lt;li&gt;budgeting apps&lt;/li&gt;
&lt;li&gt;household management&lt;/li&gt;
&lt;li&gt;internal dashboards&lt;/li&gt;
&lt;li&gt;small team tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;SQLite gives you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a single file database&lt;/li&gt;
&lt;li&gt;zero infrastructure&lt;/li&gt;
&lt;li&gt;no database server&lt;/li&gt;
&lt;li&gt;extremely reliable storage&lt;/li&gt;
&lt;li&gt;backups as simple as copying a file&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And for personal applications, it’s more than enough.&lt;/p&gt;




&lt;h1&gt;
  
  
  4. Tailscale
&lt;/h1&gt;

&lt;p&gt;This is what makes the whole thing practical.&lt;/p&gt;

&lt;p&gt;Tailscale creates a private encrypted mesh network between your devices.&lt;/p&gt;

&lt;p&gt;Your app never has to be exposed publicly to the internet.&lt;/p&gt;

&lt;p&gt;You can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;host the app on your desktop&lt;/li&gt;
&lt;li&gt;run it on a mini PC&lt;/li&gt;
&lt;li&gt;keep it on an old laptop&lt;/li&gt;
&lt;li&gt;use a small home server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;and securely access it from:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;iPhone&lt;/li&gt;
&lt;li&gt;Android&lt;/li&gt;
&lt;li&gt;Mac&lt;/li&gt;
&lt;li&gt;Windows&lt;/li&gt;
&lt;li&gt;tablets&lt;/li&gt;
&lt;li&gt;laptops&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tailscale’s free tier supports up to 6 users, which is perfect for families or small teams.&lt;/p&gt;

&lt;p&gt;This is honestly one of the biggest unlocks for personal software development.&lt;/p&gt;




&lt;h1&gt;
  
  
  The Authentication Trick
&lt;/h1&gt;

&lt;p&gt;For personal apps, you don’t need enterprise auth.&lt;/p&gt;

&lt;p&gt;You don’t need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OAuth&lt;/li&gt;
&lt;li&gt;Auth0&lt;/li&gt;
&lt;li&gt;Clerk&lt;/li&gt;
&lt;li&gt;JWT complexity&lt;/li&gt;
&lt;li&gt;social logins&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If the app only exists inside your private Tailscale network, you can simplify authentication dramatically.&lt;/p&gt;

&lt;p&gt;One approach I use often:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;create predefined users&lt;/li&gt;
&lt;li&gt;let the app ask “Who are you?”&lt;/li&gt;
&lt;li&gt;store the selected user locally&lt;/li&gt;
&lt;li&gt;treat that as authenticated&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That sounds wrong if you come from enterprise software.&lt;/p&gt;

&lt;p&gt;But context matters.&lt;/p&gt;

&lt;p&gt;Inside a private encrypted Tailscale network shared only with trusted users, this is often completely acceptable for personal tools.&lt;/p&gt;

&lt;p&gt;The result:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;almost zero auth complexity&lt;/li&gt;
&lt;li&gt;no external auth provider&lt;/li&gt;
&lt;li&gt;no monthly auth costs&lt;/li&gt;
&lt;li&gt;much faster development&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You stop overengineering software that only five people will ever use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3tc0yt6tz8z9r9gdqys.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3tc0yt6tz8z9r9gdqys.jpg" alt=" " width="800" height="828"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  Make It a PWA
&lt;/h1&gt;

&lt;p&gt;This part is important.&lt;/p&gt;

&lt;p&gt;When prompting the AI to build the app, include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;installable PWA support&lt;/li&gt;
&lt;li&gt;offline support where possible&lt;/li&gt;
&lt;li&gt;responsive mobile UI&lt;/li&gt;
&lt;li&gt;app manifest&lt;/li&gt;
&lt;li&gt;service worker setup&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This allows the web app to behave almost exactly like a native app.&lt;/p&gt;

&lt;p&gt;You can install it directly from the browser.&lt;/p&gt;

&lt;h2&gt;
  
  
  iPhone
&lt;/h2&gt;

&lt;p&gt;Use Safari → Share → Add to Home Screen&lt;/p&gt;

&lt;h2&gt;
  
  
  Android
&lt;/h2&gt;

&lt;p&gt;Install directly through Chrome&lt;/p&gt;

&lt;h2&gt;
  
  
  Mac and Windows
&lt;/h2&gt;

&lt;p&gt;Install directly from Chromium browsers&lt;/p&gt;

&lt;p&gt;Once installed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;it launches like a native app&lt;/li&gt;
&lt;li&gt;has its own icon&lt;/li&gt;
&lt;li&gt;runs fullscreen&lt;/li&gt;
&lt;li&gt;feels like a real application&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most non-technical users won’t even realize it’s a website.&lt;/p&gt;




&lt;h1&gt;
  
  
  Using MagicDNS
&lt;/h1&gt;

&lt;p&gt;Tailscale’s MagicDNS makes the experience even better.&lt;/p&gt;

&lt;p&gt;Instead of:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;192.168.1.44:3000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You get:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mealplanner.tailnet-name.ts.net
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Or:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;budgetbox.tailnet-name.ts.net
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This makes your apps feel like real products instead of random local servers.&lt;/p&gt;




&lt;h1&gt;
  
  
  Example Apps That Work Extremely Well
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Family Apps
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Meal Planner
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;weekly meals&lt;/li&gt;
&lt;li&gt;shared grocery list&lt;/li&gt;
&lt;li&gt;pantry tracking&lt;/li&gt;
&lt;li&gt;recipe storage&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Budgeting App
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;monthly expenses&lt;/li&gt;
&lt;li&gt;sinking funds&lt;/li&gt;
&lt;li&gt;subscriptions&lt;/li&gt;
&lt;li&gt;shared family budgeting&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Household Dashboard
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;chores&lt;/li&gt;
&lt;li&gt;maintenance reminders&lt;/li&gt;
&lt;li&gt;schedules&lt;/li&gt;
&lt;li&gt;calendars&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Kids Dashboard
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;allowance tracking&lt;/li&gt;
&lt;li&gt;reading goals&lt;/li&gt;
&lt;li&gt;homework tracking&lt;/li&gt;
&lt;li&gt;screen time systems&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Small Team Apps
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Internal Tools
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;lightweight CRM&lt;/li&gt;
&lt;li&gt;project tracker&lt;/li&gt;
&lt;li&gt;sprint dashboard&lt;/li&gt;
&lt;li&gt;client management&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Studio Tools
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;asset trackers&lt;/li&gt;
&lt;li&gt;bug lists&lt;/li&gt;
&lt;li&gt;roadmap viewers&lt;/li&gt;
&lt;li&gt;release planning&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Content Pipelines
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;social post planners&lt;/li&gt;
&lt;li&gt;publishing trackers&lt;/li&gt;
&lt;li&gt;video pipelines&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Why This Matters
&lt;/h1&gt;

&lt;p&gt;We spent years forcing every software idea into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SaaS&lt;/li&gt;
&lt;li&gt;cloud hosting&lt;/li&gt;
&lt;li&gt;subscriptions&lt;/li&gt;
&lt;li&gt;scaling concerns&lt;/li&gt;
&lt;li&gt;public deployment&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But most software ideas do not need to scale to millions of users.&lt;/p&gt;

&lt;p&gt;A huge percentage of useful software only needs to solve problems for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;one person&lt;/li&gt;
&lt;li&gt;one family&lt;/li&gt;
&lt;li&gt;one studio&lt;/li&gt;
&lt;li&gt;one team&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI makes custom software generation cheap.&lt;/p&gt;

&lt;p&gt;Modern frameworks make development fast.&lt;/p&gt;

&lt;p&gt;Tailscale makes networking easy.&lt;/p&gt;

&lt;p&gt;PWAs make distribution trivial.&lt;/p&gt;

&lt;p&gt;And SQLite removes infrastructure entirely.&lt;/p&gt;

&lt;p&gt;The result is that personal software development is entering a completely different era.&lt;/p&gt;




&lt;h1&gt;
  
  
  A Sample Prompt
&lt;/h1&gt;

&lt;p&gt;Here’s the type of prompt I’ll give an AI model:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Build a Next.js PWA for meal planning and grocery management.&lt;br&gt;
Use SQLite for storage.&lt;br&gt;
Use simple local authentication where the user selects their identity from predefined users.&lt;br&gt;
Design it mobile-first.&lt;br&gt;
Add installable PWA support.&lt;br&gt;
Include offline support for grocery lists.&lt;br&gt;
Optimize the UI for iPhone and desktop usage.&lt;br&gt;
Use TailwindCSS and shadcn/ui.&lt;br&gt;
Structure the app cleanly with reusable components and API routes.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That alone can get you shockingly far now.&lt;/p&gt;




&lt;h1&gt;
  
  
  Final Thoughts
&lt;/h1&gt;

&lt;p&gt;I think we’re entering a phase where developers will increasingly build software specifically for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;their own lives&lt;/li&gt;
&lt;li&gt;their families&lt;/li&gt;
&lt;li&gt;their friend groups&lt;/li&gt;
&lt;li&gt;niche communities&lt;/li&gt;
&lt;li&gt;small businesses&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not everything needs to become a startup.&lt;/p&gt;

&lt;p&gt;Sometimes the best software is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;simple&lt;/li&gt;
&lt;li&gt;private&lt;/li&gt;
&lt;li&gt;local&lt;/li&gt;
&lt;li&gt;highly customized&lt;/li&gt;
&lt;li&gt;built for exactly the people using it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And for the first time in a long time, building those kinds of applications is actually easy.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Are You Building?
&lt;/h2&gt;

&lt;p&gt;If you’ve been building personal apps or experimenting with local-first setups, I’d honestly love to hear what you’re building or how you’re approaching it.&lt;/p&gt;

&lt;p&gt;I think this space is becoming more interesting every month.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>nextjs</category>
      <category>ai</category>
      <category>selfhosted</category>
    </item>
  </channel>
</rss>
