[007] / WHAT I USE
THE
STACK.
Tools, languages, and services I reach for day-to-day. Opinions are mine, defaults are mostly the same as everyone else's.
[01]
LANGUAGES
What I reach for first.
TYPESCRIPT
DEFAULT FOR EVERYTHING
The single biggest productivity multiplier. Strict mode on, `any` is a smell.
PYTHON
SCRIPTS, DATA, ML GLUE
When something needs to happen once, or there's a pandas dataframe in the way.
C / C++
WHEN I NEED TO UNDERSTAND THE MACHINE
Mostly reading, occasionally writing. Keeps the mental model honest.
[02]
FRONTEND & MOBILE
Where visitors actually meet the product.
REACT NATIVE (EXPO)
MOBILE
Ships cross-platform in weeks, not months. EAS + OTA updates close the native gap.
NEXT.JS (APP ROUTER)
WEB
Server components + file routing + static export is the fastest way I know to ship a fast, crawlable site.
TAILWIND CSS
STYLING
Co-located, deletable, and impossible to drift. v4's `@theme inline` is elegant.
LUCIDE
ICONS
Tree-shakable, stylistically consistent, no sprite headaches.
[03]
BACKEND & DATA
The part recruiters pretend to care about.
NESTJS
LONG-RUNNING SERVICES
Opinionated structure pays off the moment a service crosses ~5 modules. DI for free.
SUPABASE EDGE FUNCTIONS
SERVERLESS GLUE
Deno + Postgres in one place. Perfect for tight, stateless endpoints next to user data.
POSTGRESQL + PGVECTOR
PRIMARY STORE
Relational *and* vector, same DB. No sidecar retrieval service.
PRISMA
ORM
Schema-first, type-safe, and the migration story actually works.
UPSTASH QSTASH
SERVERLESS JOB QUEUE
HTTP-based, no Redis to operate. Powers Euno's hourly heartbeat loop with durable retries and deadlines.
[04]
AI & OBSERVABILITY
Where the LLMs actually live.
ANTHROPIC SDK
PRIMARY LLM
Claude for reasoning-heavy generation. Behind a thin service abstraction so I can A/B against OpenAI per call.
OPENAI SDK
EMBEDDINGS + FALLBACK
text-embedding-3-small (1536d) for semantic memory; GPT models when Anthropic isn't the right shape.
LANGFUSE
LLM OBSERVABILITY
Every call logged with tokens, latency, userId, and prompt. Makes regressions visible before users notice.
PGVECTOR
RETRIEVAL
Same Postgres that holds the rows. No sidecar retrieval service — semantic search lives where the data does.
[05]
SECURITY & CRYPTO
Boring choices on purpose.
WEB CRYPTO (AES-GCM)
SYMMETRIC ENCRYPTION
Browser-native, audited, fast. Per-user keys + biometric gates mean I can't read your data.
ARGON2ID
PASSWORD HASHING
Current best default. Tune parameters for the host, then forget about it.
[06]
INFRA & TOOLING
The stuff between `git push` and prod.
VERCEL
FRONTEND HOSTING
Preview deploys per PR closes the feedback loop to seconds.
RAILWAY
BACKEND & REDIS
Deploys a NestJS + Redis stack without needing a DevOps detour.
DOCKER
LOCAL PARITY
If it boots in compose, it boots on the host.
GITHUB ACTIONS
CI
Cheap, scriptable, and the logs are where everyone already lives.
[07]
EDITOR & DAILY DRIVERS
What's actually on my screen.
VS CODE + CURSOR
EDITOR
VS Code for everyday work, Cursor when the task is 'read this large thing first'.
CLAUDE CODE
PAIR PROGRAMMER
Best when pointed at a tight, well-scoped task with a clear verification step.
ARC / CHROME DEVTOOLS
BROWSER
DevTools is underrated. Most of my hardest bugs died in the Network tab.
OBSIDIAN
NOTES
Plaintext markdown in a folder. Outlives every proprietary tool.