flyio-local-dev-loop

Configure Fly.io local development with hot reload and testing. Use when setting up a development environment, configuring test workflows, or establishing a fast iteration cycle with Fly.io. Trigger with phrases like "flyio dev setup", "flyio local development", "flyio dev environment", "develop with flyio".

claude-code
6 Tools
flyio-pack Plugin
saas packs Category

Allowed Tools

ReadWriteEditBash(npm:*)Bash(pnpm:*)Grep

Provided by Plugin

flyio-pack

Claude Code skill pack for Fly.io (18 skills)

saas packs v1.0.0
View Plugin

Installation

This skill is included in the flyio-pack plugin:

/plugin install flyio-pack@claude-code-plugins-plus

Click to copy

Instructions

Fly.io Local Dev Loop

Overview

Set up a fast, reproducible local development workflow for Fly.io.

Prerequisites

  • Completed flyio-install-auth setup
  • Node.js 18+ with npm/pnpm
  • Code editor with TypeScript support
  • Git for version control

Instructions

Step 1: Create Project Structure


my-flyio-project/
├── src/
│   ├── flyio/
│   │   ├── client.ts       # Fly.io client wrapper
│   │   ├── config.ts       # Configuration management
│   │   └── utils.ts        # Helper functions
│   └── index.ts
├── tests/
│   └── flyio.test.ts
├── .env.local              # Local secrets (git-ignored)
├── .env.example            # Template for team
└── package.json

Step 2: Configure Environment


# Copy environment template
cp .env.example .env.local

# Install dependencies
npm install

# Start development server
npm run dev

Step 3: Setup Hot Reload


{
  "scripts": {
    "dev": "tsx watch src/index.ts",
    "test": "vitest",
    "test:watch": "vitest --watch"
  }
}

Step 4: Configure Testing


import { describe, it, expect, vi } from 'vitest';
import { Fly.ioClient } from '../src/flyio/client';

describe('Fly.io Client', () => {
  it('should initialize with API key', () => {
    const client = new Fly.ioClient({ apiKey: 'test-key' });
    expect(client).toBeDefined();
  });
});

Output

  • Working development environment with hot reload
  • Configured test suite with mocking
  • Environment variable management
  • Fast iteration cycle for Fly.io development

Error Handling

Error Cause Solution
Module not found Missing dependency Run npm install
Port in use Another process Kill process or change port
Env not loaded Missing .env.local Copy from .env.example
Test timeout Slow network Increase test timeout

Examples

Mock Fly.io Responses


vi.mock('@flyio/sdk', () => ({
  Fly.ioClient: vi.fn().mockImplementation(() => ({
    // Mock methods here
  })),
}));

Debug Mode


# Enable verbose logging
DEBUG=FLYIO=* npm run dev

Resources

Next Steps

See flyio-sdk-patterns for production-ready code patterns.

Ready to use flyio-pack?