lime

n8n node to connect to Lime CRM

Documentation

LIME n8n Nodes

This repository contains custom n8n nodes/credentials for LIME services (Lime CRM, Lime Forms) and Fortnox.

Local development is done via a DevContainer.

Prerequisites

  • Docker (Rancher Desktop)
  • VS Code + the “Dev Containers” extension

Getting Started (Dev Container)

  1. Open this repo in VS Code
  2. Run: “Dev Containers: Reopen in Container”

On first create, the Dev Container will:

  • run npm ci
  • build the package (npm run build)
  • restart the n8n container so it picks up the compiled dist/ output

When the container is up, n8n is available at:

Development Workflow

  • Build once: npm run build
  • Watch TypeScript: npm run dev
  • Run tests: npm test
  • Lint: npm run lint

If you rebuild and need n8n to reload the updated custom nodes, restart n8n from inside the Dev Container:

docker restart n8n

Useful commands while developing:

# Follow n8n logs
docker logs -f n8n

# Stop/start n8n
docker stop n8n
docker start n8n

How the Custom Nodes Are Loaded

The Dev Container composition runs two services:

  • devcontainer: your Node.js (Node 24) development environment
  • n8n: an n8n instance configured to load custom extensions

The compiled output in dist/ is mounted into the n8n container and exposed to n8n via N8N_CUSTOM_EXTENSIONS.

n8n state is persisted in a named Docker volume (n8n-data) managed by the Dev Container composition.

Requirement of restart of dev env

During development you will have to restart development n8n server because of how n8n actually loads nodes:

  • Custom nodes are loaded once at startup

  • Node metadata (description, properties, inputs/outputs) is cached

  • Executions reuse the already-loaded JS code

  • So n8n must be restarted to see changes in:

    • description
    • properties
    • credentials definitions
    • icons, display options, etc.
  • This is true for:

    • custom nodes in ~/.n8n/nodes and ~/.n8n/custom
    • nodes baked into a Docker image
    • community nodes

If you rebuild and need n8n to reload the updated custom nodes, restart n8n from terminal:

Troubleshooting

  • If npm ci fails due to permissions on node_modules, rebuild the container (the Dev Container uses a named volume for node_modules).
  • If n8n starts but the nodes don’t show up, ensure you’ve run npm run build and then docker restart n8n.

References

No devcontainers?

Just run docker-compose up - the rest is similar to work with devcontainer.

Discussion