Mix LogoMix

Design Decisions

Why Mix was built like this

HTTP server interface instead of stdio

AspectHTTP Interface ✅Stdio Interface ❌
TestingSimple curl commands test any endpoint instantlyRequires subprocess spawning, input/output coordination
Debugging ToolsBrowser DevTools, Postman, network inspectors work out-of-boxMust build custom logging, parsing, and inspection tools
Error HandlingClear HTTP status codes plus structured JSON-RPC error responsesCryptic stderr messages, silent failures, process hangs
SDK GenerationOpenAPI spec enables automatic SDK generation for multiple languagesRequires custom protocol parsers and hand-written client libraries

This HTTP-first approach enables Mix's flexible architecture where a single Go backend serves multiple clients (Tauri desktop app, CLI tools, external integrations) through standard HTTP communication.