Blog
All articles. All pillars. All authors.
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.
#117 -- Semantic Search and Vector Storage
How FLIN's semantic text type and search keyword enable meaning-based search -- automatic embedding generation, HNSW vector indexing, and cosine similarity ranking built into the language.
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.
#116 -- The Intent Engine: Natural Language Database Queries
How FLIN's Intent Engine translates natural language into database queries -- the ask keyword that lets developers write 'users who signed up last week' instead of SQL joins and WHERE clauses.
#108 -- JWT Authentication in 3 Lines of FLIN
How FLIN's built-in JWT functions -- create_token, verify_token, refresh_token -- reduce token-based authentication to three lines of code with secure defaults.
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.
#107 -- Argon2 Password Hashing Built Into FLIN
How FLIN ships Argon2id password hashing as a built-in function -- no bcrypt debates, no configuration, just hash_password() and verify_password() with secure defaults.
#125 -- Search Analytics and Result Caching
How FLIN tracks search queries, measures result quality, and caches frequently accessed results -- turning search from a stateless operation into a learning, optimizing system.
#094 -- The Raw Tag: Escape Hatch for HTML
How FLIN's <raw> tag enables injecting trusted HTML directly into the DOM -- powering markdown rendering, SVG icons, and rich content display while maintaining security.
#096 -- FLIN's Embedded HTTP Server
How FLIN ships a production-grade HTTP server inside the runtime itself -- no Express, no Flask, no external dependency. Just run your .flin file and the server is already there.
#106 -- Security by Design: OWASP Top 10 in the Language
How FLIN addresses all OWASP Top 10 vulnerabilities at the language level -- not through libraries, not through configuration, but through design decisions that make insecure code impossible to write.
#131 -- Chunk-Embedding Integration
How FLIN connects text chunks to vector embeddings for semantic search over stored documents.