← Back


How I build and deploy projects using AI

Published: 2026-01-19


I've been working with AI coding agents for about a year now, mostly with Codex. I've switched between Claude Code, Cursor, and even my own self-hosted agent. I've now settled on using Codex for everything. I don't need to pay for different AI providers, I have one subscription for general AI usage and for my coding adventures.

Ruby on Rails

Codex allows me to go from 0-1 faster than I ever have been able to. I've been a Rails developer for the past decade plus some years, my love of Rails is that it goes fast. Combined with AI coding agents, it's faster than ever to get complex projects up and running. In what feels like a blink of an eye. It's easy to get them up and running locally, but what happens when I want to deploy it. That's the hard part.

I've tried other tools, like Django and Node.js. None of them seem to allow one stop for doing everything I want. From the basics, like routing and basic HTML rendering, to more complex things like background jobs and database migrations. Rails has been the best solution for what I want. Combined with a long history, AI coding agents are really good at working with Rails. I tell it I want a new record that relates to a recipe in Elaro, it will run all the commands for me and build out routes, controllers, views, models and validation for me. I just have to describe what I want.

It really has never been a better time to be a Rails developer it feels like.

Options for Deployment

There's lot of options, I could just use the online application builders. I've never actually used them, so I can't even list them off here, but I know they exist and that they're very popular. The idea never really seemed interesting to me, I know how to develop software, I don't really want to rely on another company to host those projects. So, I've developed my own process for deploying my projects.

Enter Render. I've been deploying on Render for quite a while now, I was given $1k in free credits a while back, and I never looked back. I'd equate it to a better functioning Heroku (again I haven't used Heroku in over 5 years so it could be better now). Render has been great, and really easy to set things up on. In the last year I believe they made things easier to get projects deployed.

Render.yaml

render.yaml files. These files are basically a blueprint for you to deploy an entire project with just one setup. Don't need to go through copying env variables and urls for postgres servers, or redis servers, background workers. All of that is handled by render.yaml. The best part, I don't need to even build the render.yaml file because Codex can build it for me.

When I've gotten my project to a point that I'm happy with and want to deploy to a remote host, I go to my coding agent and say "I'm deploying on render, can you build a render.yaml that will work for this project" and since Rails is pretty clear and easy to know what's needed, the coding agent almost always one shots the solution.

Where the coding agent sometimes goes wrong is that Render has updated their allowed databases types, or names that you can set and the knowledgebase of the agent doesn't have it yet.

Docker

Render also supports Docker out of the box, if your repo contains a Docker file it will deploy with that. Combined with a render.yaml it makes things incredibly easy to deploy. Your dockerfile includes any setup that your worker/servers need (maybe special CLI tools that aren't available in Rails), it runs the build command for docker, and your render.yaml file controls setting up databases, and moving around any environment variables you may need.

Generally I'm not a fan of Docker. I feel it makes things way too bloated, and when I do use it I miss just being able to navigate to localhost:3000 in my browser and see what I want. For a project like Elaro, it was required because tools I needed were not available as RubyGems. For this reason, I don't actually run Elaro locally, I just deploy changes to production and test it on my phone. Please note, I have a near decade old MacBook that I should upgrade but have not yet.

Self-hosting

This is something I haven't fully explored yet, but am interested in. I have a set of servers in my house that I would like to deploy small projects to. But I haven't found a good tool to do it. I think it's going to end up being Docker, but I'm really not sure yet. In an ideal world, I'd be able to login to a server on my phone, tell it what I want it to build and in the background it would code the entire application itself, setup all the services it needs, and deploy it with tailscale for me to access from anywhere I want. I haven't found anything to do that just yet, maybe when I find free time I'll develop it.

I've seen some small rumblings of Kamal by the Rails team, it seems to be exactly what I want. But whether the coding agents can understand it will be another thing.