Package Information
Downloads: 5 weekly / 24 monthly
Latest Version: 0.3.0
Author: Bruno Felix
Documentation
n8n-nodes-weekmeal
Nodo personalizado de n8n para interactuar con la WeekMeal API (FSH PlayGround).
Genera automáticamente 76 operaciones a partir del documento OpenAPI 3.1.1, agrupadas en 10 recursos:
| Recurso | Descripción |
|---|---|
| Identity | Autenticación, usuarios, roles, permisos, sesiones, grupos |
| Tenants | Gestión de inquilinos, temas y aprovisionamiento |
| Profile | Perfiles, condiciones de salud, preferencias, comidas fijas, grupos |
| Audits | Registros de auditoría, seguridad, excepciones y resúmenes |
| Menus | Creación y gestión de menús semanales |
| Recipes | Recetas y su estado |
| Runs | Ejecuciones de planificación y eventos |
| Shopping | Listas de compra e ítems |
| PlayGround | Endpoints de prueba |
| Health | Health checks (live / ready) |
Características
- Auto-generado desde
Weekmeal-v1.jsonusando@devlikeapro/n8n-openapi-node - Autenticación JWT automática — el nodo hace login con email/password/tenant, cachea el token y lo refresca antes de que expire, sin intervención manual
- Credenciales simples — solo configuras Base URL, Tenant, Email y Password
- Botón "Probar credenciales" integrado en la UI de n8n
- Icono SVG personalizado con el branding de WeekMeal
Credenciales
Al crear las credenciales en n8n, configura los siguientes campos:
| Campo | Descripción | Ejemplo |
|---|---|---|
| Base URL | URL base del servidor | https://api.tudominio.com |
| Tenant | Header tenant para multitenant | root |
| Email del usuario | admin@example.com |
|
| Password | Contraseña del usuario | •••••••• |
El nodo gestiona el ciclo de vida del token de forma transparente:
1ª llamada → Login automático → guarda accessToken + refreshToken
Llamadas siguientes → inyecta Bearer token del caché
Token próximo a expirar → refresh automático
Refresh falla → login completo automático
Instalación en Docker (producción)
El repositorio incluye un Dockerfile multi-stage que compila el nodo e integra en n8n:
# Stage 1: compila TypeScript
FROM node:20-alpine AS builder
...
# Stage 2: imagen final con n8n
FROM n8nio/n8n:2.12.2
...
En tu docker-compose.yml, añade la variable de entorno en los servicios n8n-custom y n8n-worker:
environment:
N8N_CUSTOM_EXTENSIONS: "/home/node/custom-nodes"
Y el volumen si usas montaje local (desarrollo):
volumes:
- /ruta/absoluta/Weekmeal-n8n-node:/home/node/custom-nodes
Para producción, simplemente construye la imagen:
docker compose build
docker compose up -d
Desarrollo local
Requisitos
- Node.js v22+
- npm
Pasos
# 1. Instalar dependencias
npm install
# 2. Compilar
npm run build
# 3. Desarrollar con hot reload
npm run dev
Scripts disponibles
| Script | Descripción |
|---|---|
npm run build |
Compila TypeScript → dist/ |
npm run build:watch |
Compilación con watch |
npm run dev |
n8n con el nodo cargado y hot reload |
npm run lint |
Verificar errores de código |
npm run lint:fix |
Corregir errores automáticamente |
Actualizar el Swagger
Cuando la API cambie, reemplaza el archivo y recompila:
# 1. Reemplaza el archivo
cp nuevo-swagger.json nodes/WeekMeal/openapi.json
# 2. Recompila
npm run build
# 3. Reconstruye la imagen Docker (producción)
docker compose build
Estructura del proyecto
├── nodes/
│ └── WeekMeal/
│ ├── WeekMeal.node.ts # Nodo principal
│ ├── openapi.json # Spec OpenAPI 3.1.1
│ └── weekmeal.svg # Icono
├── credentials/
│ └── WeekMealApiCredentials.credentials.ts
├── Dockerfile # Multi-stage build
├── Weekmeal-v1.json # Swagger original (referencia)
└── package.json