WriterIX
Multi-tenant AI content SaaS — workspaces bring their own LLM keys, pick a provider, and run end-to-end blog pipelines with live review gates, RAG knowledge bases, and social publishing.
Role
Architect & Full-Stack Engineer
Capacity
Solo build
Year
2026
Stack size
16 tools
Overview
WriterIX is a multi-tenant SaaS platform for AI-driven content generation. The architecture is domain-driven: pipelines, runs, content, brand, knowledge, sources, destinations, billing, and social each live in their own domain with models, services, selectors, tasks, and tests kept together. The AI layer uses a LangGraph pipeline that orchestrates every content run: topic research → outline → section writing → SEO metadata → graphics. The facade pattern keeps LangChain types out of domain code; all AI calls flow through a single entry point. Workspaces bring their own API keys (BYOK) across five providers — Anthropic, OpenAI, Google Gemini, Groq, and OpenRouter — with per-workspace key encryption and a metering layer that tracks token spend per run. Graphics generation runs in a Node renderer sidecar (Fastify + Satori → resvg → sharp) supporting six template families at four sizes. Knowledge bases are backed by pgvector RAG — workspaces attach documents, RSS feeds, and URLs; the ingestion pipeline chunks, embeds, and retrieves context at generation time. A scheduling layer handles recurring pipeline runs and publishes finished posts to connected destinations. The frontend runs on Inertia.js with React and TypeScript. Billing is handled via Stripe with workspace-scoped subscription management. The platform ships as Docker images; the marketing site is a static export deployed separately behind Nginx.
Responsibilities
- Architected the domain-driven Django backend — each domain owns its models, services, selectors, tasks, and tests.
- Designed the LangGraph AI pipeline for end-to-end content runs: topic research, outline, section writing, SEO metadata, and graphics in a single orchestrated graph.
- Built the BYOK system supporting five LLM providers (Anthropic, OpenAI, Google Gemini, Groq, OpenRouter) with per-workspace encrypted key storage and token-spend metering.
- Implemented pgvector-backed RAG knowledge bases with ingestion pipelines for documents, RSS feeds, and URLs.
- Built the Node renderer sidecar (Fastify + Satori) for graphics generation — six template families at four sizes.
- Designed workspace-scoped multi-tenancy with ULID public IDs, review gates in the content editor, and Stripe billing.
- Deployed as two independent images: the Django app and a static-export Nginx image for the marketing site.
Highlights
- LangGraph pipeline orchestrates full content runs: topic → outline → sections → SEO → graphics
- BYOK across 5 providers: Anthropic, OpenAI, Google Gemini, Groq, OpenRouter
- pgvector RAG — workspace documents and sources retrieved as context at generation time
- Node renderer sidecar for social graphics: 6 template families × 4 sizes
- Domain-driven architecture with import-linter enforcing AI facade boundaries