deploying a custom blog in 2 hours with AI

how this site came to be

tools

the tools AI tools I used are: claude code and railway MCP. claude code is Anthropic's AI coding agent. railway is a cloud platform that provides the thinnest wrapper over bare metal that i have found. railway MCP is a third party tool that allows claude code to use railway.

development process

first i asked claude to tell me what technologies to use to make my blog:

ideation

then i created an empty template with webstorm:

webstorm

then i asked claude code to make a blog with mdx:

ideation

then i edited the content, tweaked the colors, went back and forth on some details and got a working site out.

deployment process

i then asked claude code to deploy on railway, using railway MCP:

deploy prompt

it then used the tool (railway MCP):

deploy tool

i ran into a few issues which required manual intervention:

  1. i had to add the custom domain myself
  2. although it linked the repo, i had to log into github in order for it to work properly (it failed silently)

also i would prefer it to update deployments instead of making new ones and deleting old ones.

then i asked it to add posthog behind a reverse proxy:

posthog

a few times the build would fail in railway prod and i just asked it to loop until npm run build works before pushing. if that didn't work i asked it to check the railway deployment and read the railway logs and fix.

the posthog thing took a few more loops for debugging to get 100% down.

why railway?

because i am going to use it on a much more complex project soon enough and wanted to do a trial run. seeing as next.js was created by vercel i am sure using their mcp and platform would lead to a smoother experience.

for the future

increasingly, when coding with AI, the issue is not the actual code, but the integration. these are some examples i have encounter in the past month:

  • getting twilio to accept my a2p 10dlc
  • figuring out how to get a service json from google cloud console to use vertex ai
  • having to link railway to my github
  • having to buy domains and change the dns
  • having to prove my identity stripe 100x

this will soon be solved when we get auth everywhere with api keys + MCP inside claude code. also when these MCP servers discoveries are standardized and easily integratable into claude code.

it's also somewhat weird to give claude code mcp servers. i have to rerun claude mcp add railway-server -e RAILWAY_API_TOKEN=... -- npx -y @jasontanswe/railway-mcp every time i startup claude code. and i still can't let claude code accept tool uses automatically for minimal human intervention.