Skip to content
Dobroslav Radosavljevič

Stack

I write most code with AI agents. I plan the work, set the rules and review every change before it merges.

How I work with agents

Frontier models
Claude Fable 5.1 and Opus 5.5, GPT-6 Astra and Sol, Gemini 3.1 Pro and 3.8 Flash, Grok 4.7.
Skills
I wrote more than 70 open-source skills that teach agents to use each library correctly and follow the code patterns I want in a codebase.
Guardrails
Strict types, lint rules and tests run on every change.
Parallel work
Subagents run research, implementation and review in parallel.
Human review
I read every diff before it merges.

Language and runtime

TypeScript
My main language, with strict mode on.
Bun
Runtime, package manager, test runner and bundler.
Node.js
When a platform or client requires it.
Effect
Typed errors, services and concurrency. I publish Effect v4 libraries.
Zod
Schemas for validation and types.

Frontend

React 19
Server and client components, actions, Suspense.
TanStack Start
Full-stack React with type-safe server functions.
TanStack Router
Typed routes, params and search state.
TanStack Query
Server state, caching and optimistic updates.
TanStack Form
Typed forms with schema validation.
Next.js 16
App Router, server actions, ISR and caching.
Base UI
Accessible unstyled components.
shadcn/ui
Component source I copy into the project.
Tailwind CSS 4
Design tokens and utility styling.
Motion
UI animation.
Tiptap
Rich text and document editors.
TanStack Table
Headless data grids with sorting, filters and paging.
D3 and visx
Custom charts.
Storybook
Component development and review.

Backend

Elysia
Bun-native HTTP with end-to-end types.
oRPC
Typed RPC that also speaks OpenAPI.
Better Auth
Sessions, OAuth, organizations and 2FA.
Drizzle ORM
Schema, queries and migrations.
PostgreSQL
My default database.
Redis
Cache, sessions, rate limits and queues.
BullMQ
Background jobs with retries and schedules.
Trigger.dev
Long-running jobs and workflows.
React Email
Transactional email built as components.
ClickHouse
Analytics on large event tables.
Kafka
Event streams between services.

AI in products

Vercel AI SDK
Streaming, tool calls and structured output across providers.
Agents and MCP
Tool-calling agents and MCP servers.
OpenAPI to MCP
cabrakan, my CLI that creates an MCP server from an OpenAPI spec.
Model mix
OpenAI, Anthropic, Google, xAI, Mistral, DeepSeek, Llama and Groq.
ElevenLabs
Voice generation and voice agents.

Infrastructure

Cloudflare Workers
APIs and proxies at the edge. KV, D1, R2.
Vercel
Frontend hosting and previews.
Railway
Services, databases and templates.
Wrangler
Deploys and local dev for Workers.
Docker
Builds and local services.
AWS S3
Object storage.
Upstash
Serverless Redis for caching and rate limits.
Vite
Dev server and builds.

Quality and insight

Sentry
Error tracking and traces.
PostHog
Product analytics, funnels and flags.
Oxlint and Oxfmt
Linting and formatting, with my own rules in bellona.
Vitest
Unit and integration tests.
Playwright
End-to-end browser tests.
Testcontainers
Integration tests against Postgres and Redis in Docker.

Content and CMS

anhur
My tool that turns content files into typed data.
MDX and Markdown
Docs, blogs and changelogs next to the code.
Ghost
Blogs and publications. I maintain a Railway template for it.
Strapi and Directus
Headless CMS for client content teams.

Open-source packages

tsdown
Builds for npm libraries.
publint
Checks package.json before release.
Are the types wrong
Checks type exports for ESM and CJS.
Turborepo
Monorepos for packages and apps.

Agent tools

Claude Code
Terminal agent for multi-file work and long tasks.
OpenAI Codex
Coding agent on GPT-6 models.
Cursor
Editor with agents and frontier models.
GitHub Copilot
Inline help and PR work.
OpenCode
Open-source terminal agent.
Devin
Long background tasks.
CodeRabbit
Automated review on every pull request.
v0
UI drafts.
Warp
Terminal with built-in agents.