Blog

All articles. All pillars. All authors.

Thales & Claude deblo

Building a React Native K12 App in 7 Days

20 sessions in 7 days: Expo SDK 54 monorepo, Zustand stores, SSE streaming, voice calls via LiveKit, biometric auth, and a custom tab bar.

15 min Mar 26, 2026
debloreact-nativeexpomobile +3
Thales & Claude sh0

Building for Africa: Mobile Money, Local Pricing, and Why It Matters

Why we built sh0 from Abidjan with Mobile Money payments, 5-language support including Swahili, and pricing designed for African developers.

11 min Mar 26, 2026
africamobile-moneypricinglocalization +2
Thales & Claude sh0

The Bugs That Almost Broke Us

Git pull failures, CSRF blocking uploads, stale Caddy processes, FTP IPv6 incompatibilities, and Docker network aliases -- the bugs that almost derailed sh0.

11 min Mar 26, 2026
debuggingbugswar-storiesrust +3
Thales & Claude sh0

OpenAPI as Single Source of Truth: Docs, MCP Tools, and Playground

How we used utoipa to auto-generate an OpenAPI 3.1 spec from Rust handler annotations, then used that spec to generate API docs, an interactive playground, and MCP tool definitions.

10 min Mar 26, 2026
openapiutoiparustdocumentation +3
Thales & Claude sh0

The sh0 CLI: 10 Commands That Mirror the Dashboard

How we built the sh0 CLI with 10 commands that mirror every dashboard action -- deploy, logs, env vars, health checks, and SSH into containers.

9 min Mar 26, 2026
clirustclapdeveloper-experience +2
Thales & Claude flin

#131 -- Chunk-Embedding Integration

How FLIN connects text chunks to vector embeddings for semantic search over stored documents.

7 min Mar 26, 2026
flinembeddingschunksvector-storage +1
Thales & Claude deblo

Voice Calls With AI: Ultravox, LiveKit, and WebRTC

Real-time voice conversations with the AI tutor: Ultravox sessions, LiveKit WebRTC, photo analysis mid-call, and per-minute credit billing.

14 min Mar 26, 2026
deblovoiceultravoxlivekit +2
Thales & Claude deblo

WhatsApp OTP and the African Authentication Problem

Email does not work. SMS is expensive. WhatsApp is universal. How we built authentication for Africa with WhatsApp OTP, Google OAuth, and student access codes.

15 min Mar 26, 2026
debloauthwhatsappotp +3
Thales & Claude deblo

SSE Streaming: Real-Time AI Responses in SvelteKit

20+ event types, inline quizzes, file downloads, credit deductions, and tool progress -- all streamed in real-time via Server-Sent Events.

14 min Mar 26, 2026
deblossestreamingsveltekit +2
Thales & Claude deblo

System Prompts That Teach: Anti-Cheating, Socratic Method, and Grade-Level Adaptation

Six-layer prompt assembly: root identity, school hours detection, grade overlays from CP to Terminale, subject expertise, and exam mode. How we taught the AI to teach.

18 min Mar 26, 2026
deblopromptspedagogyanti-cheating +2
Thales & Claude sh0

Giving sh0 a Brain: AI Gateway with Claude Tool Calling

How we built an AI gateway that lets Claude manage sh0 servers -- with SSE streaming, 10 tool definitions, client-side execution, and a chat UI that feels like talking to a DevOps engineer.

11 min Mar 26, 2026
aiclaudetool-callinggateway +3
Thales & Claude sh0

Building an MCP Server: 25 Tools, 3-Tier Safety, OpenAPI-Driven

How we built sh0's MCP server with 25 tools, OpenAPI-driven auto-generation, scoped API keys, risk classification, and confirmation tokens for destructive operations.

11 min Mar 26, 2026
mcpmodel-context-protocolrustai +3