I've been building side projects for years, but the last few weeks have completely changed how I work. The combination of Conductor (an AI coding assistant) and custom skills has turned what used to be multi-week projects into multi-day sprints.
Here's the thing: I'm not a developer. I'm a designer and frontend dev with 15 years of experience working alongside developers, reviewing PRs, and navigating codebases. I understand code, I can read it, but I don't write it.
With Conductor, I haven't touched a single line of code myself. Everything happens through natural language in the CLI and browser automation.
The stack
Every project I build now follows the same core pattern:
- Next.js 16 with React 19 and the App Router
- Tailwind CSS v4 for styling
- Prisma with PostgreSQL for data (when needed)
- NextAuth v5 for authentication
- Railway for deployment
- shadcn/ui for components
This isn't arbitrary:it's a stack I've optimized for speed. Every piece works well together, and more importantly, Claude knows it inside out.
Conductor workspaces
Conductor gives each project its own isolated workspace. Right now I'm running:
- PiratePage - AI landing page generator
- FounderFit - Blind scoring for startup ideas
- CloakAI - PII detection Chrome extension
- Locohost - Localhost process manager
- DoneQuote - Multilingual quote management
- messwithwes - This website
Each workspace is a self-contained environment. I can have multiple projects open, each on different ports, without conflicts. The key is automated port detection:when I run npm run dev, it finds the next available port automatically.
Custom skills
The real power comes from custom skills. These are instructions that Claude follows for specific tasks. I've built five:
nextjs-baseline - Standards for every Next.js project. Covers port management (never kill all node processes!), environment variables, Node version pinning, and a preflight script that auto-fixes common issues before running.
railway-deploy - Railway deployment with pre-flight validation. Checks build errors, migration locks, and environment variables before deploying. Includes the full CLI reference so Claude can run deployments without me looking anything up.
project-audit - Validates project configuration against my standards. Catches missing files, wrong settings, security issues.
auth-setup - OAuth and credentials authentication patterns. NextAuth v5 setup with GitHub, Google, and email/password.
shadcn-ui - Component library patterns with MCP integration. Claude can search 439+ components, view source code, and generate install commands.
CLI everything
I do everything through the command line. Not because I'm a terminal purist:because it's the interface Claude works best with.
- Git operations: Claude runs
git add,git commit,git push - Package management: Claude handles
npm install, dependency updates - Database migrations: Claude runs Prisma commands
- Deployment: Claude uses Railway CLI to create projects, set variables, and deploy
- Browser automation: Claude controls Chrome to test, screenshot, and verify
I describe what I want, Claude executes it. When something breaks, I paste the error, Claude fixes it. The feedback loop is instant.
The preflight pattern
Every project gets a preflight script that runs before npm run dev. It auto-fixes:
- Missing
.envfile → copies from.env.example - Missing
NEXTAUTH_SECRET→ generates one withopenssl rand -base64 32 - Missing
node_modules→ runsnpm install - Prisma migration lock mismatch → fixes the provider
- Missing
.nvmrc→ creates one with Node 22
This means I can clone any project and run npm run dev immediately. No setup steps to forget.
How I actually work
A typical session looks like this:
- Open Conductor, create a new workspace
- Describe what I want to build
- Claude scaffolds the project with my standards baked in
- I iterate on features through conversation:Claude handles all the code
- When ready, I say "deploy to Railway" and Claude runs the preflight checks and deploys
The skills act as institutional knowledge. Instead of repeating "remember to use detect-port" or "don't forget the postinstall script for Prisma," it's all encoded. Claude just does the right thing.
What's changed
Before this setup, I needed a developer to ship anything. Now I'm building and deploying production apps myself.
The interesting shift is where I spend my time. Less on finding the right person to help, more on product decisions. Less on "can someone build X for me," more on "should I build X at all."
I'm shipping more projects, faster, with fewer bugs. The stack is boring on purpose:it lets me focus on the interesting parts: the design and the product.
The meta moment
This blog post? Written in a Conductor workspace. Claude analyzed my skills, workspaces, and CLAUDE.md to understand my setup, then wrote this post. I edited the content through conversation, but I never opened a code editor.
This website you're reading? Deployed via Railway CLI. I typed "deploy to Railway" and Claude handled the rest.
That's the workflow in action.