
n8n Project Structure
The extendable workflow automation tool. A massive TypeScript monorepo that separates the core logic engine from the Vue.js editor and its extensive library of integration nodes.
Updated 2025-12-30
Project Directory
Repository Info
- Repository-n8n-io/n8n
- Stars-40k+
- License-Sustainable Use License (FAIR)
- Last Analyzed-December 2025
Tech Stack
- Language-TypeScript
- Backend-Node.js (Express)
- Frontend-Vue.js 3 + Pinia
- Database-SQLite / Postgres / MySQL
- Package Manager-pnpm + Turborepo
- Testing-Jest / Vitest
Architecture Notes
n8n is a distributed monolith. While it's in one repo, the architecture is designed for scalability. The workflow package is a platform-agnostic engine that can execute a graph of nodes. The core package wraps this engine with persistence and user management. The nodes-base package is a massive library of plugins that keep the core engine lean and focused purely on execution.
Key Directories
- packages/workflow/-The heart of n8n. It defines how data flows between nodes and how expressions are evaluated.
- packages/nodes-base/-Where all the integrations live. Each node is a TypeScript class that defines its inputs, outputs, and logic.
- packages/frontend/editor-ui/-The browser-based canvas where users build workflows. Built with Vue.js and a custom node-graph implementation.
Why This Structure?
n8n is the best example of a 'Plugin-Heavy' architecture in the Node.js ecosystem. It demonstrates how to manage hundreds of external integrations while maintaining a high-performance core engine.