1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/a74fb1607b845cb0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/6e4098d9165c7da2.css?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/3fd950ab04186881.css?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-3360aef8bfcd8215.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH"/>
1<script src="/_next/static/chunks/4bd1b696-ffe88fddf8accd97.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/1684-12040738d743be59.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/main-app-d41d56f775a954bb.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/app/layout-1cb8003f95c9d5cd.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/3063-476a8c8715c50e5d.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/app/laundry/layout-64c2cb1ad00b0cd9.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/5513-03ed7dc67e7ec0cc.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/177-7078e24fd956dabc.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script src="/_next/static/chunks/app/laundry/page-bdc7fabbeb82f503.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<link rel="preload" href="https://substack.com/embedjs/embed.js" as="script"/><meta name="next-size-adjust" content=""/><title>Laundry Management | adrianl.ai</title><meta name="description" content="Track and manage your laundry items and washing schedule"/><link rel="shortcut icon" href="/icon.svg"/><link rel="icon" href="/icon.svg"/><link rel="apple-touch-icon" href="/icon.svg"/><link rel="apple-touch-icon" href="/icon.svg"/>
1<script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script>
1<script src="/_next/static/chunks/polyfills-42372ed130431b0a.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" noModule=""></script>
1</head><body class="__className_f367f3 __variable_8f5f65 bg-gray-50"><div hidden=""><!--$--><!--/$--></div><div><header class="bg-white shadow-sm"><div class="container mx-auto px-4 py-4 flex items-center gap-2"><img alt="Leaf icon" loading="lazy" width="24" height="24" decoding="async" data-nimg="1" style="color:transparent" src="/icon.svg"/><h1 class="text-xl font-semibold">adrianl.ai</h1></div></header><div class="container mx-auto px-4 py-8"><div class="flex items-baseline justify-between mb-6"><h1 class="text-3xl font-bold">Laundry Tracker</h1></div><div role="tablist" aria-label="Laundry views" class="sticky top-0 z-10 -mx-4 px-4 py-2 mb-6 bg-gray-50"><div class="flex gap-1 p-1 bg-white rounded-lg shadow-sm border"><button type="button" role="tab" id="tab-status" aria-selected="true" aria-controls="panel-status" class="flex-1 min-h-[40px] rounded-md text-sm font-medium transition-colors bg-blue-600 text-white">Status</button><button type="button" role="tab" id="tab-history" aria-selected="false" aria-controls="panel-history" class="flex-1 min-h-[40px] rounded-md text-sm font-medium transition-colors text-gray-600 hover:bg-gray-50">Past washes (0)</button></div></div><div id="panel-status" role="tabpanel" aria-labelledby="tab-status"><div class="bg-white p-6 rounded-lg shadow-md mb-8"><h2 class="text-xl font-semibold mb-4">Log an Entry</h2><form class="space-y-4"><div class="flex gap-4"><div class="flex-1"><label class="block text-sm font-medium mb-1">Date</label><input type="date" class="w-full p-2 border rounded" value="2026-10-05"/></div><div class="flex-1"><label class="block text-sm font-medium mb-1">Type</label><div class="flex gap-2"><button type="button" class="flex-1 p-2 rounded border text-sm capitalize bg-blue-600 text-white border-blue-600">wash</button><button type="button" class="flex-1 p-2 rounded border text-sm capitalize text-gray-600 border-gray-300 hover:bg-gray-50">chore</button></div></div></div><div><label class="block text-sm font-medium mb-1">Wash Method</label><select class="w-full p-2 border rounded"><option value="White">White</option><option value="Color">Color</option><option value="White Hot">White Hot</option><option value="Machine Wash" selected="">Machine Wash</option><option value="Hand Wash">Hand Wash</option><option value="Dry Clean">Dry Clean</option></select></div><div><label class="block text-sm font-medium mb-1">Items</label><div class="relative"><input type="text" placeholder="Search or add an item..." class="w-full p-2 border rounded" value=""/></div></div><button type="submit" disabled="" class="bg-blue-500 text-white px-4 py-2 rounded hover:bg-blue-600 disabled:opacity-40 disabled:cursor-not-allowed">Add Entry</button></form></div><div class="bg-white p-6 rounded-lg shadow-md mb-8"><h2 class="text-xl font-semibold mb-4">Status</h2><p class="text-sm text-gray-500">Loading...</p></div></div></div><!--$--><!--/$--></div>
1<script src="/_next/static/chunks/webpack-3360aef8bfcd8215.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[69243,[\"7177\",\"static/chunks/app/layout-1cb8003f95c9d5cd.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\"],\"\"]\n3:I[87555,[],\"\"]\n4:I[31295,[],\"\"]\n5:I[33063,[\"3063\",\"static/chunks/3063-476a8c8715c50e5d.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"3415\",\"static/chunks/app/laundry/layout-64c2cb1ad00b0cd9.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\"],\"Image\"]\n6:I[90894,[],\"ClientPageRoot\"]\n7:I[84762,[\"5513\",\"static/chunks/5513-03ed7dc67e7ec0cc.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"177\",\"static/chunks/177-7078e24fd956dabc.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"2308\",\"static/chunks/app/laundry/page-bdc7fabbeb82f503.js?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\"],\"default\"]\na:I[59665,[],\"OutletBoundary\"]\nd:I[74911,[],\"AsyncMetadataOutlet\"]\nf:I[59665,[],\"ViewportBoundary\"]\n11:I[59665,[],\"MetadataBoundary\"]\n13:I[26614,[],\"\"]\n:HL[\"/_next/static/media/a74fb1607b845cb0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/6e4098d9165c7da2.css?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"style\"]\n:HL[\"/_next/static/css/3fd950ab04186881.css?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"style\"]\n"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"kGPj3oUjFQu6TYuPJ4DcG\",\"p\":\"\",\"c\":[\"\",\"laundry\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"laundry\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/6e4098d9165c7da2.css?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/3fd950ab04186881.css?dpl=dpl_AmAKWZ2if39PbEjuu138kPgUoavH\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_f367f3 __variable_8f5f65 bg-gray-50\",\"children\":[[\"$\",\"$L2\",null,{\"src\":\"https://substack.com/embedjs/embed.js\",\"strategy\":\"afterInteractive\"}],[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]]}],{\"children\":[\"laundry\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"div\",null,{\"children\":[[\"$\",\"header\",null,{\"className\":\"bg-white shadow-sm\",\"children\":[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 py-4 flex items-center gap-2\",\"children\":[[\"$\",\"$L5\",null,{\"src\":\"/icon.svg\",\"alt\":\"Leaf icon\",\"width\":24,\"height\":24}],[\"$\",\"h1\",null,{\"className\":\"text-xl font-semibold\",\"children\":\"adrianl.ai\"}]]}]}],[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L6\",null,{\"Component\":\"$7\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@8\",\"$@9\"]}],null,[\"$\",\"$La\",null,{\"children\":[\"$Lb\",\"$Lc\",[\"$\",\"$Ld\",null,{\"promise\":\"$@e\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"Bxv57K-GqdrO0q7STq_eJv\",{\"children\":[[\"$\",\"$Lf\",null,{\"children\":\"$L10\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],[\"$\",\"$L11\",null,{\"children\":\"$L12\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$13\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script>
1<script>self.__next_f.push([1,"14:\"$Sreact.suspense\"\n15:I[74911,[],\"AsyncMetadata\"]\n8:{}\n9:{}\n12:[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$14\",null,{\"fallback\":null,\"children\":[\"$\",\"$L15\",null,{\"promise\":\"$@16\"}]}]}]\n"])</script>
1<script>self.__next_f.push([1,"c:null\n"])</script>
1<script>self.__next_f.push([1,"10:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nb:null\n"])</script>
1<script>self.__next_f.push([1,"e:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Laundry Management | adrianl.ai\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Track and manage your laundry items and washing schedule\"}],[\"$\",\"link\",\"2\",{\"rel\":\"shortcut icon\",\"href\":\"/icon.svg\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/icon.svg\"}],[\"$\",\"link\",\"4\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icon.svg\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icon.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n16:{\"metadata\":\"$e:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script>
1</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.