Skip to content

Commit 0583c59

Browse files
committed
feat: add TypeScript workflows support and conversion CLI commands
1 parent 4700a28 commit 0583c59

7 files changed

Lines changed: 790 additions & 0 deletions

File tree

.github/agents/test.agent.md

Whitespace-only changes.

README.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,63 @@ Visual workflow management with embedded n8n canvas, status indicators, and push
100100
### 🌐 **Multi-Instance Support**
101101
Isolate workflows from different n8n environments automatically.
102102

103+
### 📝 **TypeScript Workflows** (New!)
104+
Transform your workflows into type-safe, readable TypeScript with decorators:
105+
106+
```typescript
107+
import { workflow, node, links } from '@n8n-as-code/transformer';
108+
109+
@workflow({
110+
id: 'abc123',
111+
name: 'My Workflow',
112+
active: true
113+
})
114+
export class MyWorkflowWorkflow {
115+
@node()
116+
Start = {
117+
type: 'n8n-nodes-base.manualTrigger',
118+
parameters: {},
119+
position: [250, 300]
120+
};
121+
122+
@node()
123+
HttpRequest = {
124+
type: 'n8n-nodes-base.httpRequest',
125+
parameters: {
126+
url: 'https://api.example.com/data',
127+
method: 'GET'
128+
},
129+
position: [450, 300]
130+
};
131+
132+
@links([
133+
{ from: 'Start', to: 'HttpRequest' }
134+
])
135+
connections = {};
136+
}
137+
```
138+
139+
**Benefits:**
140+
-**Better readability** - Clean, maintainable structure with decorators
141+
- 🔒 **Type safety** - TypeScript catches errors before deployment
142+
- 🎨 **IDE support** - IntelliSense, autocomplete, and refactoring
143+
- 🔄 **Bidirectional** - Convert JSON ↔ TypeScript seamlessly
144+
- 🤖 **AI-friendly** - Easier for LLMs to understand and edit
145+
146+
**Quick Commands:**
147+
```bash
148+
# Convert JSON workflow to TypeScript
149+
n8nac convert workflow.json
150+
151+
# Convert directory of workflows
152+
n8nac convert-batch workflows/
153+
154+
# Pull workflows as TypeScript (requires sync package update)
155+
n8nac pull --format typescript
156+
```
157+
158+
📖 [Full TypeScript Workflows Guide](https://etiennelescot.github.io/n8n-as-code/docs/usage/typescript-workflows)
159+
103160
---
104161

105162
## 🎯 Common Use Cases

0 commit comments

Comments
 (0)