Self-taught Full Stack Developer 👨💻. Exploring the intersection of modern web stacks and AI. Writing about Web dev and AI. Always building, always learning🚀
Stop dumping your entire codebase into a single system prompt.
In my new blogpost, I explore how to move to Agentic Orchestration. Building a parallel development squad using Claude sub-agents, explicit workflows, and the Model Context Protocol (MCP).
bastiaan.dev/blog/agentic-or…
Full-stack development doesn't have to mean wrestling with heavy meta-frameworks or manually syncing API types.
I've been building the BEDR-stack: Bun, Elysia, Drizzle, and React.
The biggest win? End-to-end type safety across a monorepo with zero code generation. Change your backend schema, and your React frontend instantly highlights the error.
I wrote a short breakdown of how it works from first principles: bastiaan.dev/blog/bedr-stack…#TypeScript#WebDev#ReactJS#Bun
Meet the BEDR stack: Bun, ElysiaJS, Drizzle ORM, and React 19. It gives you the "batteries-included" feel of legacy frameworks, but with the raw execution speed of Bun and end-to-end type safety via Eden Treaty. ⚡️
Check it out here:
github.com/basst85/BEDR-stac…#Bun#ElysiaJS#React19#TypeScript#WebDev
Vandaag speelt regen de hoofdrol op de weerradar, maar zaterdag waren de insecten heer en meester! 🦟
Op warme, rustige lentedagen vullen ze de onderste luchtlagen massaal, en worden ze zichtbaar op de ongefilterde radarbeelden. Daarbij onthullen ze de atmosfeerstructuur! 🧵
De #natuurbrand op 't #Harde in een Copernicus Sentinel 2C satellietopname van 12:51 NL tijd.
Combinatie van visuele kanalen en SWIR om de brand zichtbaar te maken.
ALT Sentinel 2C image detail showing the wildfire at 't Harde, the Netherlands. Combination of visual channels SWIR. Contains modified Copernicus Sentinel data. Image processed by Marco Langbroek
ALT Sentinel 2C image showing the wildfire at 't Harde, the Netherlands. Combination of visual channels SWIR. Contains modified Copernicus Sentinel data. Image processed by Marco Langbroek
Earthset.
The Artemis II crew captured this view of an Earthset on April 6, 2026, as they flew around the Moon. The image is reminiscent of the iconic Earthrise image taken by astronaut Bill Anders 58 years earlier as the Apollo 8 crew flew around the Moon.
ALT Earthset captured through the Orion spacecraft window at 6:41 p.m. EDT, April 6, 2026, during the Artemis II crew\u2019s flyby of the Moon. A muted blue Earth with bright white clouds sets behind the cratered lunar surface. The dark portion of Earth is experiencing nighttime. On Earth\u2019s day side, swirling clouds are visible over the Australia and Oceania region.\nIn the foreground, Ohm crater has terraced edges and a flat floor interrupted by central peaks. Central peaks form in complex craters when the lunar surface, liquefied on impact, splashes upwards during the crater\u2019s formation. Credit: NASA
Side project drop: Copilot Expert Council (VS Code)
It's Copilot custom agents, but with a twist: a coordinator agent that fans out the same prompt to 4 expert reviewers and synthesizes the final verdict
Less noise, more signal 🧠
github.com/basst85/copilot-e…#vscode#BuildInPublic#GitHubCopilot
Just shipped: --a11y flag for react-triage ♿
Scans your @reactjs/@nextjs project for accessibility/WCAG violations in milliseconds:
• Missing alt text
• Invalid ARIA roles & props
• onClick without keyboard events
• Unlabelled form controls
• Empty headings & anchors
bunx react-triage --a11y
#DX#BuildInPublic#DevTools
🚀Just shipped a new --fail-on policy flag in react-triage.
You can now fail CI on a specific severity level. For example:
--fail-on=critical
--fail-on=performance
bunx -y react-triage . --fail-on=critical ⚛️
#reactjs#nextjs#DX#OpenSource
🚀Just shipped a new --fail-on policy flag in react-triage.
You can now fail CI on a specific severity level. For example:
--fail-on=critical
--fail-on=performance
bunx -y react-triage . --fail-on=critical ⚛️
#reactjs#nextjs#DX#OpenSource
Added a new feature in react-triage: Check for unused dependencies/devDependencies 🗑️
Try it out now: bunx -y react-triage@latest
#DX#BuildInPublic#DevTools
Added a new feature in react-triage: Check for unused dependencies/devDependencies 🗑️
Try it out now: bunx -y react-triage@latest
#DX#BuildInPublic#DevTools
💯 What is your React/Next.js project Health score?
I created a new tool called react-triage. It scans your code for security, performance, and best practices (including Vercel's best practices) and grades your repo.
🤖 You can also add it as a skill to your AI agent to let it analyze and fix your repo autonomously
Don't let tech debt pile up. Check your project score now:
github.com/basst85/react-tri…
💯 What is your React/Next.js project Health score?
I created a new tool called react-triage. It scans your code for security, performance, and best practices (including Vercel's best practices) and grades your repo.
🤖 You can also add it as a skill to your AI agent to let it analyze and fix your repo autonomously
Don't let tech debt pile up. Check your project score now:
github.com/basst85/react-tri…
Does your coding agents forget decisions between sessions? And are you re-explaining the same things to Cursor/Claude/VS Code, like code style, “gotchas”, decisions…?
🧠I built a local-first MCP memory sidecar:
• semantic search
• store / find / supersede / delete memories
• per-project scoping
• runs 100% locally
Code: github.com/basst85/local-mem…#MCP#DevTools#ClaudeCode#VScode
Update: local-memory-mcp now uses the new Zvec vector database instead of SQLite sqlite-vec.
Why:
• embedded, in-process vector DB
• fast KNN metadata filters
• still 100% local MCP stdio
• Ollama embeddings (embeddinggemma) unchanged
Repo: github.com/basst85/local-mem…#MCP#AI#VectorDB#Zvec#BuildingInPublic
New blog post: From Vectors to Answers: Building a Local RAG Agent 🤖
Everything you need to know about Local RAG:
🔹 Storing data as vectors
🔹 Querying your local store
🔹 Generating answers with an LLM
Read the full walkthrough:
bastiaan.dev/blog/from-vecto…#ai#SQLite@bunjavascript@ollama
The OpenClaw architecture defines a brilliant structure for Agents: SOUL.md (behavior), USER.md (context), and MEMORY.md (history). 🧠
However, loading these full files into the context window every single turn is not scalable. It burns tokens and dilutes the model's focus ("Lost in the Middle" phenomenon).
The theoretical fix: Hybrid RAG.
Instead of dumping the raw Markdown:
1️⃣ Chunk the MEMORY.md logs.
2️⃣ Index them using a local Vector Store (like SQLite-vector).
3️⃣ Retrieve only the relevant memories dynamically based on the current query.
#OpenClaw#LocalAI#RAG#VectorSearch#AIArchitecture
Local AI doesn't have to be complicated 🤖
My example repo demonstrates a lightweight stack for building Chatbots and Agents (also fully offline):
✅ Runtime: @bunjavascript (native SQLite support 👍🏻)
✅ DB: SQLite-vector (no heavy servers)
✅ AI:@ollama (Llama 3.2)
Clone this project to see how easy it is to add "memory" to your local LLMs.
🔗 Repo: github.com/basst85/local-oll…#DevCommunity#bun#LLM#AI#BuildingInPublic
Local AI doesn't have to be complicated 🤖
My example repo demonstrates a lightweight stack for building Chatbots and Agents (also fully offline):
✅ Runtime: @bunjavascript (native SQLite support 👍🏻)
✅ DB: SQLite-vector (no heavy servers)
✅ AI:@ollama (Llama 3.2)
Clone this project to see how easy it is to add "memory" to your local LLMs.
🔗 Repo: github.com/basst85/local-oll…#DevCommunity#bun#LLM#AI#BuildingInPublic
Watch Firefly land on the Moon! After identifying surface hazards and selecting a safe landing site, #BlueGhost landed directly over the target in Mare Crisium. A historic moment on March 2 we'll never forget. We have Moon dust on our boots! #BGM1
Good morning!!
We thought the Apple liquid metal invite was so cool. How fun would it be if everyone could see their logo in liquid?
So we made an app to let you make your logo in liquid. Just drag in your logo and see. Link inside the thread.
We think you're gonna love it!