{"$schema":"https://ejfox.com/schema/page-twin@1.json","kind":"blog_post","url":"https://ejfox.com/blog/week-notes/2025-08","json_url":"https://ejfox.com/blog/week-notes/2025-08.json","generator":"ejfox.com/json-twin@1","data":{"cacheVersion":"2026-05-13-gear-cards","html":"<h2 class=\"\" id=\"2025-08\">2025-08</h2>\n<h3 class=\"\" id=\"daily-check-in--reflections\">Daily Check-In &#x26; Reflections</h3>\n<h4 class=\"\" id=\"monday\">Monday</h4>\n<p class=\"\">Holiday, resting, playing Call of Duty with my friends.</p>\n<h4 class=\"\" id=\"tuesday\">Tuesday</h4>\n<p class=\"\">I'm trying to untangle all of my ongoing projects. Like, a lot of things are at, like, 90% completion. And that final 10% is really difficult.</p>\n<p class=\"\">I was trying to share authentication between multiple projects using the same Supabase project, but that was causing all sorts of bugs. So I made new Supabase projects for a bunch of my projects which will hopefully make it easier to get them shippable.</p>\n<p class=\"\">I worked on debugging some - I'm really working towards making some demo videos ideally by the end of the week. I want, like, demo videos for all the projects. I want them to be usable MVPs, but even if they're not, we have videos of the features and the ideas that I was working towards.​​​​​​ as a historical record.</p>\n<h4 class=\"\" id=\"wednesday\">Wednesday</h4>\n<p class=\"\">Made first contact with my future self today, breaking months of exercise inertia with a 0.57-mile winter runtime in 22°F weather (feels like 15°). Deployed Coach Artie docker successfully, fixed critical website issues, debugged Connectology's sim problems, and configured my digital augments (Apple Watch). Field tested winter run protocols with weight vest and boots - system response was optimal, discovered sustainable interval patterns without redlining. The fascists may have worked out today, but so did I. Momentum carrying into evening tasks. Physical protocols informing digital ones: sometimes the cleanest code comes after testing your limits in the cold. Todo list trembling before newfound energy. Earned these moonrocks.</p>\n<h4 class=\"\" id=\"thursday\">Thursday</h4>\n<p class=\"\">Successfully configured Loki to store logs in Cloudflare R2 (preventing VPS disk usage).</p>\n<p class=\"\">Built a Cloudflare Worker to transform Sentry's webhook format into Loki's expected format, though the final Sentry→Worker→Loki pipeline remains incomplete, will have to come back to that. Ideally client-side errors will all be sent to the same Grafana instance so I can see both frontend and backend errors across all my projects.</p>\n<h4 class=\"\" id=\"friday\">Friday</h4>\n<p class=\"\">Went for a run. Got a new futuristic toothbrush in the mail. Watched bladerunner. Bought some new notebooks. Worried about the future of our country. The usual stuff.</p>\n<h4 class=\"\" id=\"saturday\">Saturday</h4>\n<p class=\"\"><strong class=\"\">Hexagram News:</strong> Bought <a href=\"https://hexagram.news\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"external-link group inline-flex items-center text-blue-600 dark:text-blue-400\" data-preview-url=\"https://hexagram.news\">https://hexagram.news</a> – picked some fonts out and got it pulling from a supabase table for the headlines. Need to work on automating the processes by which we add new headlines, but I'll save that for later.</p>\n<h3 class=\"\" id=\"-learning--media\">📚 Learning &#x26; Media</h3>\n<!-- Books, articles, movies, TV shows, podcasts consumed -->\n<p class=\"\">This is the most insane MFA pin I've ever received.</p>\n<figure role=\"figure\" aria-label=\"UPS identity verification message displaying PIN 320000 that expires in 30 minutes.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740060912/Screenshot_2025-02-20_at_9.14.58_AM.png\" alt=\"UPS identity verification message displaying PIN 320000 that expires in 30 minutes.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740060912/Screenshot_2025-02-20_at_9.14.58_AM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740060912/Screenshot_2025-02-20_at_9.14.58_AM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740060912/Screenshot_2025-02-20_at_9.14.58_AM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740060912/Screenshot_2025-02-20_at_9.14.58_AM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"UPS identity verification message displaying PIN 320000 that expires in 30 minutes.\" width=\"954\" height=\"278\" style=\"--splay-rot:2.1deg;\" data-dimensions=\"954×278\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">UPS identity verification message displaying PIN 320000 that expires in 30 minutes.</figcaption>\n</figure>\n<p class=\"\">Going back through old journal entries sometimes results in gems.</p>\n<figure role=\"figure\" aria-label=\"Social media post suggesting standardized naming conventions for cannabis/drug ratios similar to Italian coffee drink terminology.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740062220/Screenshot_2025-02-20_at_9.36.47_AM.png\" alt=\"Social media post suggesting standardized naming conventions for cannabis/drug ratios similar to Italian coffee drink terminology.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740062220/Screenshot_2025-02-20_at_9.36.47_AM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740062220/Screenshot_2025-02-20_at_9.36.47_AM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740062220/Screenshot_2025-02-20_at_9.36.47_AM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740062220/Screenshot_2025-02-20_at_9.36.47_AM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Social media post suggesting standardized naming conventions for cannabis/drug ratios similar to Italian coffee drink terminology.\" width=\"702\" height=\"332\" style=\"--splay-rot:2.59deg;\" data-dimensions=\"702×332\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Social media post suggesting standardized naming conventions for cannabis/drug ratios similar to Italian coffee drink terminology.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Article excerpt discussing researchers&#x27; discovery of structural patterns in whale vocalizations and plans to build language models of whale calls to decode their communication.\" class=\"\"><img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740159576/Screenshot_2025-02-21_at_12.39.23_PM.png\" alt=\"Article excerpt discussing researchers&#x27; discovery of structural patterns in whale vocalizations and plans to build language models of whale calls to decode their communication.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740159576/Screenshot_2025-02-21_at_12.39.23_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740159576/Screenshot_2025-02-21_at_12.39.23_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740159576/Screenshot_2025-02-21_at_12.39.23_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740159576/Screenshot_2025-02-21_at_12.39.23_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Article excerpt discussing researchers&#x27; discovery of structural patterns in whale vocalizations and plans to build language models of whale calls to decode their communication.\" width=\"1320\" height=\"1424\" style=\"--splay-rot:-2.08deg;\" data-dimensions=\"1320×1424\" class=\"img-full my-8 rounded-sm img-splay aspect-square w-full mx-auto py-4\" crossorigin=\"anonymous\"><figcaption class=\"\">Article excerpt discussing researchers' discovery of structural patterns in whale vocalizations and plans to build language models of whale calls to decode their communication.</figcaption></figure><img src=\"https://res.cloudinary.com/ejf/video/upload/c_scale,f_auto,q_auto:good,w_1280/v1740164296/Screen_Recording_2025-02-21_at_1.57.33_PM.mov\" alt=\"Screenshot - 2025-02-21 13:58 - Screen Recording 2025-02-21 at 1.57.33 PM.mov\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/video/upload/c_scale,f_auto,q_auto:good,w_640/v1740164296/Screen_Recording_2025-02-21_at_1.57.33_PM.mov 640w, https://res.cloudinary.com/ejf/video/upload/c_scale,f_auto,q_auto:good,w_960/v1740164296/Screen_Recording_2025-02-21_at_1.57.33_PM.mov 960w, https://res.cloudinary.com/ejf/video/upload/c_scale,f_auto,q_auto:good,w_1280/v1740164296/Screen_Recording_2025-02-21_at_1.57.33_PM.mov 1280w, https://res.cloudinary.com/ejf/video/upload/c_scale,f_auto,q_auto:good,w_1920/v1740164296/Screen_Recording_2025-02-21_at_1.57.33_PM.mov 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" style=\"--splay-rot:-2.94deg;\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\"><figure role=\"figure\" aria-label=\"TypeScript documentation for coachartie capabilities covering local capabilities, internal microservices, and external APIs with implementation examples.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740247476/Screenshot_2025-02-22_at_1.04.24_PM.png\" alt=\"TypeScript documentation for coachartie capabilities covering local capabilities, internal microservices, and external APIs with implementation examples.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740247476/Screenshot_2025-02-22_at_1.04.24_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740247476/Screenshot_2025-02-22_at_1.04.24_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740247476/Screenshot_2025-02-22_at_1.04.24_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740247476/Screenshot_2025-02-22_at_1.04.24_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"TypeScript documentation for coachartie capabilities covering local capabilities, internal microservices, and external APIs with implementation examples.\" width=\"3600\" height=\"2252\" style=\"--splay-rot:1.88deg;\" data-dimensions=\"3600×2252\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">TypeScript documentation for coachartie capabilities covering local capabilities, internal microservices, and external APIs with implementation examples.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Chat conversation testing Claude AI assistant, demonstrating message duplication bug and system response capabilities.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740249385/Screenshot_2025-02-22_at_1.36.11_PM.png\" alt=\"Chat conversation testing Claude AI assistant, demonstrating message duplication bug and system response capabilities.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740249385/Screenshot_2025-02-22_at_1.36.11_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740249385/Screenshot_2025-02-22_at_1.36.11_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740249385/Screenshot_2025-02-22_at_1.36.11_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740249385/Screenshot_2025-02-22_at_1.36.11_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Chat conversation testing Claude AI assistant, demonstrating message duplication bug and system response capabilities.\" width=\"2612\" height=\"2458\" style=\"--splay-rot:-0.96deg;\" data-dimensions=\"2612×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-square w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Chat conversation testing Claude AI assistant, demonstrating message duplication bug and system response capabilities.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Chat interface showing conversation with AI about building an Electron desktop app, with console errors displaying Content Security Policy violations.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740252208/Screenshot_2025-02-22_at_2.23.12_PM.png\" alt=\"Chat interface showing conversation with AI about building an Electron desktop app, with console errors displaying Content Security Policy violations.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740252208/Screenshot_2025-02-22_at_2.23.12_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740252208/Screenshot_2025-02-22_at_2.23.12_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740252208/Screenshot_2025-02-22_at_2.23.12_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740252208/Screenshot_2025-02-22_at_2.23.12_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Chat interface showing conversation with AI about building an Electron desktop app, with console errors displaying Content Security Policy violations.\" width=\"2976\" height=\"2458\" style=\"--splay-rot:0.68deg;\" data-dimensions=\"2976×2458\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Chat interface showing conversation with AI about building an Electron desktop app, with console errors displaying Content Security Policy violations.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Developer workspace showing Vuepecula chat application with commit history, source control changes, TypeScript component errors, and testing checklist for UI/UX improvements.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740253623/Screenshot_2025-02-22_at_2.46.53_PM.png\" alt=\"Developer workspace showing Vuepecula chat application with commit history, source control changes, TypeScript component errors, and testing checklist for UI/UX improvements.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740253623/Screenshot_2025-02-22_at_2.46.53_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740253623/Screenshot_2025-02-22_at_2.46.53_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740253623/Screenshot_2025-02-22_at_2.46.53_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740253623/Screenshot_2025-02-22_at_2.46.53_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Developer workspace showing Vuepecula chat application with commit history, source control changes, TypeScript component errors, and testing checklist for UI/UX improvements.\" width=\"3600\" height=\"2338\" style=\"--splay-rot:0.86deg;\" data-dimensions=\"3600×2338\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Developer workspace showing Vuepecula chat application with commit history, source control changes, TypeScript component errors, and testing checklist for UI/UX improvements.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying message counts, timestamps, token usage, and cost metrics.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740253625/Screenshot_2025-02-22_at_2.46.56_PM.png\" alt=\"Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying message counts, timestamps, token usage, and cost metrics.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740253625/Screenshot_2025-02-22_at_2.46.56_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740253625/Screenshot_2025-02-22_at_2.46.56_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740253625/Screenshot_2025-02-22_at_2.46.56_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740253625/Screenshot_2025-02-22_at_2.46.56_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying message counts, timestamps, token usage, and cost metrics.\" width=\"684\" height=\"816\" style=\"--splay-rot:-2.8deg;\" data-dimensions=\"684×816\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying message counts, timestamps, token usage, and cost metrics.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying perplexity scores, token counts, and zero-cost pricing.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740253634/Screenshot_2025-02-22_at_2.47.02_PM.png\" alt=\"Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying perplexity scores, token counts, and zero-cost pricing.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740253634/Screenshot_2025-02-22_at_2.47.02_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740253634/Screenshot_2025-02-22_at_2.47.02_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740253634/Screenshot_2025-02-22_at_2.47.02_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740253634/Screenshot_2025-02-22_at_2.47.02_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying perplexity scores, token counts, and zero-cost pricing.\" width=\"718\" height=\"784\" style=\"--splay-rot:2.22deg;\" data-dimensions=\"718×784\" class=\"img-full my-8 rounded-sm img-splay aspect-square w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Vulpecula chat interface showing two conversation sessions with R1 1776 model, displaying perplexity scores, token counts, and zero-cost pricing.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Chat conversation with virtual assistant deepseek-r1 in Vulpecula Loom interface showing 48 tokens used, 6 incoming, 42 outgoing messages at zero cost.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740265334/Screenshot_2025-02-22_at_6.02.02_PM.png\" alt=\"Chat conversation with virtual assistant deepseek-r1 in Vulpecula Loom interface showing 48 tokens used, 6 incoming, 42 outgoing messages at zero cost.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740265334/Screenshot_2025-02-22_at_6.02.02_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740265334/Screenshot_2025-02-22_at_6.02.02_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740265334/Screenshot_2025-02-22_at_6.02.02_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740265334/Screenshot_2025-02-22_at_6.02.02_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Chat conversation with virtual assistant deepseek-r1 in Vulpecula Loom interface showing 48 tokens used, 6 incoming, 42 outgoing messages at zero cost.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:2.49deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Chat conversation with virtual assistant deepseek-r1 in Vulpecula Loom interface showing 48 tokens used, 6 incoming, 42 outgoing messages at zero cost.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"AI conversation analytics showing 48 tokens used across 2 messages with deepseek-r1, costing 0.0¢ per token.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740265338/Screenshot_2025-02-22_at_6.02.06_PM.png\" alt=\"AI conversation analytics showing 48 tokens used across 2 messages with deepseek-r1, costing 0.0¢ per token.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740265338/Screenshot_2025-02-22_at_6.02.06_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740265338/Screenshot_2025-02-22_at_6.02.06_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740265338/Screenshot_2025-02-22_at_6.02.06_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740265338/Screenshot_2025-02-22_at_6.02.06_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"AI conversation analytics showing 48 tokens used across 2 messages with deepseek-r1, costing 0.0¢ per token.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:-0.63deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">AI conversation analytics showing 48 tokens used across 2 messages with deepseek-r1, costing 0.0¢ per token.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Chat interface with AI assistant DeepSeek-r1 discussing how the user is doing, showing token usage and conversation cost metrics.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740265343/Screenshot_2025-02-22_at_6.02.11_PM.png\" alt=\"Chat interface with AI assistant DeepSeek-r1 discussing how the user is doing, showing token usage and conversation cost metrics.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740265343/Screenshot_2025-02-22_at_6.02.11_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740265343/Screenshot_2025-02-22_at_6.02.11_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740265343/Screenshot_2025-02-22_at_6.02.11_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740265343/Screenshot_2025-02-22_at_6.02.11_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Chat interface with AI assistant DeepSeek-r1 discussing how the user is doing, showing token usage and conversation cost metrics.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:1.36deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Chat interface with AI assistant DeepSeek-r1 discussing how the user is doing, showing token usage and conversation cost metrics.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Vulpecula Loom settings dialog showing OpenRouter API key configuration, Obsidian vault folder selection, light theme preference, and model display options.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266174/Screenshot_2025-02-22_at_6.16.01_PM.png\" alt=\"Vulpecula Loom settings dialog showing OpenRouter API key configuration, Obsidian vault folder selection, light theme preference, and model display options.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740266174/Screenshot_2025-02-22_at_6.16.01_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740266174/Screenshot_2025-02-22_at_6.16.01_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266174/Screenshot_2025-02-22_at_6.16.01_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740266174/Screenshot_2025-02-22_at_6.16.01_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Vulpecula Loom settings dialog showing OpenRouter API key configuration, Obsidian vault folder selection, light theme preference, and model display options.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:0.79deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Vulpecula Loom settings dialog showing OpenRouter API key configuration, Obsidian vault folder selection, light theme preference, and model display options.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Settings dialog showing 236 available AI models with pricing, including Claude 3.5, GPT-4 Turbo, and other LLMs with token costs and context window sizes.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266176/Screenshot_2025-02-22_at_6.16.05_PM.png\" alt=\"Settings dialog showing 236 available AI models with pricing, including Claude 3.5, GPT-4 Turbo, and other LLMs with token costs and context window sizes.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740266176/Screenshot_2025-02-22_at_6.16.05_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740266176/Screenshot_2025-02-22_at_6.16.05_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266176/Screenshot_2025-02-22_at_6.16.05_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740266176/Screenshot_2025-02-22_at_6.16.05_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Settings dialog showing 236 available AI models with pricing, including Claude 3.5, GPT-4 Turbo, and other LLMs with token costs and context window sizes.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:-1.52deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Settings dialog showing 236 available AI models with pricing, including Claude 3.5, GPT-4 Turbo, and other LLMs with token costs and context window sizes.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Account settings dialog showing email login, sign out button, and privacy notice that data is securely isolated per user.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266182/Screenshot_2025-02-22_at_6.16.08_PM.png\" alt=\"Account settings dialog showing email login, sign out button, and privacy notice that data is securely isolated per user.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740266182/Screenshot_2025-02-22_at_6.16.08_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740266182/Screenshot_2025-02-22_at_6.16.08_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266182/Screenshot_2025-02-22_at_6.16.08_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740266182/Screenshot_2025-02-22_at_6.16.08_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Account settings dialog showing email login, sign out button, and privacy notice that data is securely isolated per user.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:0.6deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Account settings dialog showing email login, sign out button, and privacy notice that data is securely isolated per user.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"AI conversation analytics showing 231-minute chat with 13 messages, 6055 tokens total cost, peak activity at 69 tokens/min, largest message 2342 tokens.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266189/Screenshot_2025-02-22_at_6.16.15_PM.png\" alt=\"AI conversation analytics showing 231-minute chat with 13 messages, 6055 tokens total cost, peak activity at 69 tokens/min, largest message 2342 tokens.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740266189/Screenshot_2025-02-22_at_6.16.15_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740266189/Screenshot_2025-02-22_at_6.16.15_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266189/Screenshot_2025-02-22_at_6.16.15_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740266189/Screenshot_2025-02-22_at_6.16.15_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"AI conversation analytics showing 231-minute chat with 13 messages, 6055 tokens total cost, peak activity at 69 tokens/min, largest message 2342 tokens.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:0.6deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">AI conversation analytics showing 231-minute chat with 13 messages, 6055 tokens total cost, peak activity at 69 tokens/min, largest message 2342 tokens.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Chat interface showing poetic exchange between user and AI about creating digital art and code, with cost tracking metrics displayed.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266227/Screenshot_2025-02-22_at_6.16.55_PM.png\" alt=\"Chat interface showing poetic exchange between user and AI about creating digital art and code, with cost tracking metrics displayed.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740266227/Screenshot_2025-02-22_at_6.16.55_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740266227/Screenshot_2025-02-22_at_6.16.55_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740266227/Screenshot_2025-02-22_at_6.16.55_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740266227/Screenshot_2025-02-22_at_6.16.55_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Chat interface showing poetic exchange between user and AI about creating digital art and code, with cost tracking metrics displayed.\" width=\"2012\" height=\"2458\" style=\"--splay-rot:0.6deg;\" data-dimensions=\"2012×2458\" class=\"img-full my-8 rounded-sm img-splay aspect-[3/4] w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Chat interface showing poetic exchange between user and AI about creating digital art and code, with cost tracking metrics displayed.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Pixelated text overlay reading &#x27;BEING KIND TO YOUR FUTURE SELF&#x27; on a bearded man&#x27;s shocked face.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740322672/Screenshot_2025-02-23_at_9.57.36_AM.png\" alt=\"Pixelated text overlay reading &#x27;BEING KIND TO YOUR FUTURE SELF&#x27; on a bearded man&#x27;s shocked face.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740322672/Screenshot_2025-02-23_at_9.57.36_AM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740322672/Screenshot_2025-02-23_at_9.57.36_AM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740322672/Screenshot_2025-02-23_at_9.57.36_AM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740322672/Screenshot_2025-02-23_at_9.57.36_AM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Pixelated text overlay reading &#x27;BEING KIND TO YOUR FUTURE SELF&#x27; on a bearded man&#x27;s shocked face.\" width=\"1274\" height=\"706\" style=\"--splay-rot:1.43deg;\" data-dimensions=\"1274×706\" class=\"img-full my-8 rounded-sm img-splay aspect-video w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Pixelated text overlay reading 'BEING KIND TO YOUR FUTURE SELF' on a bearded man's shocked face.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Black and white photograph of a man with a motorcycle at a rural parking area surrounded by trees and wooden fences.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740337044/Screenshot_2025-02-23_at_1.57.07_PM.png\" alt=\"Black and white photograph of a man with a motorcycle at a rural parking area surrounded by trees and wooden fences.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740337044/Screenshot_2025-02-23_at_1.57.07_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740337044/Screenshot_2025-02-23_at_1.57.07_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740337044/Screenshot_2025-02-23_at_1.57.07_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740337044/Screenshot_2025-02-23_at_1.57.07_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Black and white photograph of a man with a motorcycle at a rural parking area surrounded by trees and wooden fences.\" width=\"2528\" height=\"1402\" style=\"--splay-rot:-0.99deg;\" data-dimensions=\"2528×1402\" class=\"img-full my-8 rounded-sm img-splay aspect-video w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Black and white photograph of a man with a motorcycle at a rural parking area surrounded by trees and wooden fences.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Artist&#x27;s hands holding a paintbrush over a blank white canvas on a cutting mat, preparing to begin painting.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740337061/Screenshot_2025-02-23_at_1.57.26_PM.png\" alt=\"Artist&#x27;s hands holding a paintbrush over a blank white canvas on a cutting mat, preparing to begin painting.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740337061/Screenshot_2025-02-23_at_1.57.26_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740337061/Screenshot_2025-02-23_at_1.57.26_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740337061/Screenshot_2025-02-23_at_1.57.26_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740337061/Screenshot_2025-02-23_at_1.57.26_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Artist&#x27;s hands holding a paintbrush over a blank white canvas on a cutting mat, preparing to begin painting.\" width=\"2524\" height=\"1404\" style=\"--splay-rot:2.22deg;\" data-dimensions=\"2524×1404\" class=\"img-full my-8 rounded-sm img-splay aspect-video w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Artist's hands holding a paintbrush over a blank white canvas on a cutting mat, preparing to begin painting.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Overhead shot of hands arranging film negatives on a light table with text overlay reading &#x22;ETHICAL FLEXIBLE&#x22;\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740337873/Screenshot_2025-02-23_at_2.11.00_PM.png\" alt=\"Overhead shot of hands arranging film negatives on a light table with text overlay reading &#x22;ETHICAL FLEXIBLE&#x22;\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740337873/Screenshot_2025-02-23_at_2.11.00_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740337873/Screenshot_2025-02-23_at_2.11.00_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740337873/Screenshot_2025-02-23_at_2.11.00_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740337873/Screenshot_2025-02-23_at_2.11.00_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Overhead shot of hands arranging film negatives on a light table with text overlay reading &#x22;ETHICAL FLEXIBLE&#x22;\" width=\"842\" height=\"462\" style=\"--splay-rot:-0.6deg;\" data-dimensions=\"842×462\" class=\"img-full my-8 rounded-sm img-splay aspect-video w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Overhead shot of hands arranging film negatives on a light table with text overlay reading \"ETHICAL FLEXIBLE\"</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Order receipt for mechanical keyboard switches shipping to Circleville, NY totaling $69.21 including tax and shipping.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740349323/Screenshot_2025-02-23_at_5.21.51_PM.png\" alt=\"Order receipt for mechanical keyboard switches shipping to Circleville, NY totaling $69.21 including tax and shipping.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740349323/Screenshot_2025-02-23_at_5.21.51_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740349323/Screenshot_2025-02-23_at_5.21.51_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740349323/Screenshot_2025-02-23_at_5.21.51_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740349323/Screenshot_2025-02-23_at_5.21.51_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Order receipt for mechanical keyboard switches shipping to Circleville, NY totaling $69.21 including tax and shipping.\" width=\"1312\" height=\"844\" style=\"--splay-rot:0.92deg;\" data-dimensions=\"1312×844\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Order receipt for mechanical keyboard switches shipping to Circleville, NY totaling $69.21 including tax and shipping.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Order confirmation email for Rhymestone Keyboard Kit showing $70 total with $52 subtotal, $18 shipping, zero taxes, and $0 paid today.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740349393/Screenshot_2025-02-23_at_5.22.59_PM.png\" alt=\"Order confirmation email for Rhymestone Keyboard Kit showing $70 total with $52 subtotal, $18 shipping, zero taxes, and $0 paid today.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740349393/Screenshot_2025-02-23_at_5.22.59_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740349393/Screenshot_2025-02-23_at_5.22.59_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740349393/Screenshot_2025-02-23_at_5.22.59_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740349393/Screenshot_2025-02-23_at_5.22.59_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Order confirmation email for Rhymestone Keyboard Kit showing $70 total with $52 subtotal, $18 shipping, zero taxes, and $0 paid today.\" width=\"3600\" height=\"2338\" style=\"--splay-rot:2.89deg;\" data-dimensions=\"3600×2338\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Order confirmation email for Rhymestone Keyboard Kit showing $70 total with $52 subtotal, $18 shipping, zero taxes, and $0 paid today.</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Star Wars joke: R2-D2 and C-3PO&#x27;s conversations are incomprehensible, depicted as blocked tweets with &#x27;unable to view&#x27; messages.\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740351105/Screenshot_2025-02-23_at_5.51.31_PM.png\" alt=\"Star Wars joke: R2-D2 and C-3PO&#x27;s conversations are incomprehensible, depicted as blocked tweets with &#x27;unable to view&#x27; messages.\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1740351105/Screenshot_2025-02-23_at_5.51.31_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1740351105/Screenshot_2025-02-23_at_5.51.31_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1740351105/Screenshot_2025-02-23_at_5.51.31_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1740351105/Screenshot_2025-02-23_at_5.51.31_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Star Wars joke: R2-D2 and C-3PO&#x27;s conversations are incomprehensible, depicted as blocked tweets with &#x27;unable to view&#x27; messages.\" width=\"1064\" height=\"1188\" style=\"--splay-rot:0.6deg;\" data-dimensions=\"1064×1188\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Star Wars joke: R2-D2 and C-3PO's conversations are incomprehensible, depicted as blocked tweets with 'unable to view' messages.</figcaption>\n</figure>","title":"2025-08","metadata":{"tags":["weekly-notes","reflections","progress"],"date":"2025-02-17T22:29:35.000Z","modified":"2025-02-27T14:47:30.000Z","words":893,"images":25,"imageDetails":{"total":25,"cloudinary":25,"withDimensions":0},"links":25,"codeBlocks":0,"headers":{"h2":1},"toc":[{"text":"2025-08","slug":"2025-08","level":"h2","children":[{"text":"Daily Check-In & Reflections","slug":"daily-check-in--reflections","level":"h3","children":[]},{"text":"📚 Learning & Media","slug":"-learning--media","level":"h3","children":[]}]}],"type":"post"}},"_links":{"self":"https://ejfox.com/blog/week-notes/2025-08.json","html":"https://ejfox.com/blog/week-notes/2025-08","index":"/blog.json"}}