Building Tourinator from My iPhone: A Modern Development Workflow

Published on December 10, 2025 · Updated December 10, 2025

Ever tried coding from your phone? Not just reviewing code or fixing a quick typo, but actually building a production web application?

That's exactly how I'm building Tourinator.

The Setup

Here's the thing: I don't need to be sitting at a desk with a giant monitor to build software anymore. My entire development environment lives on a server (affectionately named "the quad") sitting at a location we call SmekNinny. When I want to work on Tourinator—whether I'm on the couch, at a coffee shop, or waiting in line—I just pull out my iPhone and SSH into the server.

[TODO - HUMAN: Add image/video here showing iPhone with terminal/SSH session running]

The Magic of tmux

The secret sauce is a tool called tmux. Think of it as a way to keep your work session alive on the server, even when you disconnect. I can start working on a feature, close my SSH connection, go grab lunch, and when I come back hours later, everything is exactly where I left it. The server keeps running, the development environment stays active, and I just pick up right where I stopped.

It's like leaving a book open on your desk versus having to find your page every time you sit down.

[TODO - HUMAN: Add screenshot of tmux session with multiple panes/windows]

Working with Claude Code

Here's where it gets interesting: my primary "co-developer" is Claude Code—an AI coding assistant from Anthropic. I'm literally typing this on my iPhone right now, having a conversation with an AI that understands the entire Tourinator codebase.

When I want to add a feature (like, say, creating this blog you're reading), I just describe what I want in plain English. Claude Code looks at the project structure, understands the Django architecture, and writes the code. It can:

  • Create new database models and run migrations
  • Write views and templates
  • Update configuration files
  • Test the changes
  • Even export data between environments

[TODO - HUMAN: Add screenshot of Claude Code conversation showing feature request → implementation]

The workflow looks something like this:

  1. Me (on iPhone): "I want to add a blog to Tourinator"
  2. Claude Code: Creates the Django app, writes models, views, templates, runs migrations, and tests everything
  3. Me: "Add a footer link to the blog"
  4. Claude Code: Updates all the necessary templates
  5. Me: Verify it works at tourinator.com

All of this happens while I'm typing on a phone keyboard.

The Technical Stack

For the curious, here's what's actually running:

  • Server: A machine at SmekNinny running Ubuntu
  • SSH: Secure shell connection from my iPhone to the server
  • tmux: Terminal multiplexer keeping sessions alive
  • Docker: Running PostgreSQL and Jaeger for the app
  • Django: The web framework powering Tourinator
  • Claude Code: AI assistant handling the actual code writing
  • Git: Version control for all changes
  • ngrok: Exposing the development server to the internet for testing

We maintain three separate environments (development, staging, and production) all running simultaneously on different ports. This means I can test features in dev, validate them in staging, and deploy to production—all from the same phone session.

[TODO - HUMAN: Add architecture diagram or screenshot showing the dev/staging/prod setup]

Why This Works

You might be thinking: "Why would anyone want to code on their phone?"

Fair question. Here's why it works for me:

Location independence. I can work from literally anywhere with cell service. No laptop required.

Always-on development. The server never sleeps. Background jobs, database migrations, AI processing—it all keeps running even when I'm offline.

Instant context switching. With tmux, I can jump between different windows—one for the Django shell, one for running the server, one for git commands, one for Claude Code conversations.

AI as a force multiplier. Claude Code knows the codebase better than I could ever keep in my head. It can read through dozens of files, understand the architecture, and make changes that are consistent with existing patterns.

[TODO - HUMAN: Add short video clip or GIF showing quick context switching between tmux windows]

The Future of Development?

I'm not saying everyone should code on their phones. But this setup has made me rethink what's actually necessary for software development in 2024.

You don't need a powerful local machine. You don't need a massive IDE. You don't even need to write most of the code yourself anymore.

What you do need:
- A clear vision of what you want to build
- The ability to communicate that vision clearly
- An AI assistant that understands software architecture
- A reliable server to run everything on
- Basic terminal skills

The rest? It's just details.

Try It Yourself

If you're curious about this workflow, here's what I'd recommend:

  1. Get comfortable with SSH and basic terminal commands
  2. Learn tmux basics (attach, detach, windows, panes)
  3. Set up a small VPS (Virtual Private Server) for development
  4. Try Claude Code or similar AI coding assistants
  5. Start small—maybe with a Django tutorial project

The barrier to entry is lower than you think. And once you've got it working, the freedom is incredible.


This post was written collaboratively between a human (me, on an iPhone) and Claude Code. The meta nature of using AI to write about using AI to build software is not lost on me.

Want to see what we built? Check out Tourinator's self-guided tour feature at tourinator.com.