Uses
The setup I use to run a multi-agent Claude Code pipeline, ship iOS apps, and write here. Updated when something actually changes — not on a release schedule.
Code & ship
- Shell: zsh on macOS
- Runtime: Bun for everything new (the test runner alone is worth it). Node for legacy.
- Languages day-to-day: TypeScript (web/CLI), Swift / SwiftUI (iOS/Mac), Python (audit scripts)
- AI: Claude Code on the Max plan. ~$13K/week shadow cost; see my own ledger.
Ship the website
- Framework: Astro with TypeScript strict mode + content collections
- Hosting: Cloudflare Pages (Direct Upload via wrangler)
- DNS / domain: Cloudflare Registrar. Bluesky handle is a TXT record on the same domain.
- OG images: auto-generated with a small Python/Pillow script
Ship iOS apps
- Build / submit: xcodebuild + App Store Connect API (JWT, ES256). I don't open Xcode for releases anymore.
- Pre-flight check: apple-presubmit-audit on every project before Submit. 70+ rules built from real rejections.
- Subscription stack: StoreKit 2, native Apple. No third-party SDK.
- Backend: minimal — most apps have none. The ones that do use a small VPS + nginx as a thin AI proxy.
Open-source publishing
- npm: jie.xiang (
claude-agent-ledger) - GitHub: XJM-free
- License default: MIT, unless I have a strong reason otherwise
- CI: GitHub Actions, only typecheck + tests gating PRs
Where I post
- Long form: here, jiexiang.dev/blog
- Short form: Bluesky @jiexiang.dev
- RSS: /rss.xml (no email newsletter yet)
What I don't use (yet)
- Comments: probably Giscus when I add them — GitHub Discussions backed, no third-party signup needed.
- Analytics: Cloudflare's built-in (privacy-friendly, no cookies). No GA, no PostHog.
- Email newsletter: not yet. RSS is the only push channel for now.
Hardware & editor
Coming soon. Reach out on Bluesky if you want me to specifically write about a part of this stack.
Comments
Be the first to start a discussion. Reply with your thoughts on Bluesky and tag @jiexiang.dev — I'll link the thread back here.