navan-local-dev-loop

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

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

Allowed Tools

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

Provided by Plugin

navan-pack

Claude Code skill pack for Navan (24 skills)

saas packs v1.0.0
View Plugin

Installation

This skill is included in the navan-pack plugin:

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

Click to copy

Instructions

Navan Local Dev Loop

Overview

Set up a fast, reproducible local development workflow for Navan.

Prerequisites

  • Completed navan-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-navan-project/
├── src/
│   ├── navan/
│   │   ├── client.ts       # Navan client wrapper
│   │   ├── config.ts       # Configuration management
│   │   └── utils.ts        # Helper functions
│   └── index.ts
├── tests/
│   └── navan.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 { NavanClient } from '../src/navan/client';

describe('Navan Client', () => {
  it('should initialize with API key', () => {
    const client = new NavanClient({ 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 Navan 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 Navan Responses


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

Debug Mode


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

Resources

Next Steps

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

Ready to use navan-pack?