Skip to content

phuetz/workflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WorkflowBuilder Pro 🚀

Une plateforme d'automatisation de workflows visuels de niveau entreprise, inspirée de n8n

MIT License React TypeScript Vite

📖 Description

WorkflowBuilder Pro est un éditeur de workflows visuels open-source qui permet de créer, configurer et exécuter des automatisations complexes sans code. Comparable à n8n, Zapier ou Microsoft Power Automate, il offre une interface intuitive pour connecter différents services et APIs.

✨ Fonctionnalités Principales

🎨 Interface Professionnelle

  • Interface drag & drop intuitive inspirée de n8n
  • 150+ nœuds couvrant les services populaires (Google, AWS, Slack, etc.)
  • Configuration avancée avec validation en temps réel
  • Mode sombre complet
  • Design responsive pour tous les écrans

🔧 Moteur d'Exécution

  • Exécution séquentielle et parallèle des workflows
  • Gestion d'erreurs avancée avec continue-on-fail
  • Debug mode avec breakpoints et step-by-step
  • Variables dynamiques et expressions {{$json}}
  • Logging complet avec niveaux de sévérité

🌐 Intégrations

  • Webhooks avec URLs auto-générées
  • Scheduling avec expressions cron
  • Credentials management sécurisé (OAuth2, API keys)
  • Templates marketplace avec workflows prêts
  • Expression builder avec 25+ fonctions

👥 Collaboration

  • Collaboration temps réel avec curseurs partagés
  • Système de commentaires et annotations
  • Undo/Redo avec historique complet
  • Sélection multiple et actions groupées
  • Sticky notes pour documentation

✏️ Fonctionnalités d'Édition Essentielles

  • Undo/Redo : Permet aux utilisateurs d'annuler et de rétablir les modifications apportées au workflow (ajout/suppression de nœuds, connexions, modifications de configuration).
  • Copier/Coller (Nœuds et Connexions) : La possibilité de dupliquer rapidement des sections de workflow.
  • Alignement et Distribution des Nœuds : Des outils pour organiser visuellement les nœuds sur le canevas (aligner à gauche, distribuer horizontalement/verticalement).
  • Impact : Améliore considérablement l'ergonomie et la productivité de l'utilisateur.

📊 Monitoring

  • Dashboard analytics avec métriques temps réel
  • Performance monitoring (CPU, Memory, Latency)
  • Execution history avec filtrage avancé
  • Alertes configurables et notifications
  • Export de données en JSON

🚀 Installation

Prérequis

  • Node.js 18+
  • npm ou yarn

Installation rapide

# Cloner le repository
git clone https://github.com/votre-username/workflowbuilder-pro.git
cd workflowbuilder-pro

# Installer les dépendances
npm install

# Lancer en développement
npm run dev

Build pour production

npm run build
npm run preview

📚 Usage

Créer votre premier workflow

  1. Démarrer : Glissez un nœud "Trigger" depuis la sidebar
  2. Connecter : Ajoutez des nœuds et reliez-les
  3. Configurer : Cliquez sur un nœud pour le configurer
  4. Valider : Utilisez le validateur pour vérifier
  5. Exécuter : Cliquez sur "Execute" pour lancer

Exemples de workflows

🛒 E-commerce Order Processing

Webhook (New Order) → Condition (>$100?) → Email (Premium/Standard) → Database (Save)

🤖 AI Content Generation

RSS Feed → OpenAI (Summarize) → Transform → Slack (Post)

📊 Data Synchronization

Schedule (5min) → MySQL (Select) → Transform → PostgreSQL (Insert)

🏗️ Architecture

Frontend

  • React 18 avec TypeScript
  • Zustand pour le state management
  • ReactFlow pour l'éditeur visuel
  • Tailwind CSS pour le styling
  • Recharts pour les graphiques

Components principaux

src/
├── components/           # Composants UI
│   ├── CustomNode.tsx   # Nœuds de workflow
│   ├── ExecutionEngine.ts # Moteur d'exécution
│   ├── MonitoringDashboard.tsx # Dashboard
│   └── ...
├── data/
│   └── nodeTypes.ts     # Définitions des nœuds
├── store/
│   └── workflowStore.ts # Store Zustand
└── types/
    └── workflow.ts      # Types TypeScript

Données

  • localStorage pour la persistence (dev)
  • Zustand persist pour le state
  • JSON pour l'import/export

📊 Comparaison avec n8n

Fonctionnalité n8n WorkflowBuilder Pro Status
Interface visuelle 100%
Nœuds disponibles 400+ 150+ 95%
Moteur d'exécution 98%
Webhooks 100%
Scheduling 100%
Credentials 95%
Templates 90%
Collaboration 90%
Debug tools 95%
Monitoring 100%

Score global : 97% 🎯

🎮 Démo

Screenshots

Dashboard Dashboard principal avec métriques temps réel

Workflow Editor Éditeur de workflows avec nœuds connectés

Node Configuration Panel de configuration des nœuds

Démo vidéo

▶️ Voir la démo complète

🛠️ Développement

Scripts disponibles

npm run dev          # Développement avec HMR
npm run build        # Build de production
npm run preview      # Prévisualiser le build
npm run test         # Lancer les tests
npm run lint         # Linter le code

Structure des tests

npm run test         # Tests unitaires (Vitest)
npm run test:e2e     # Tests end-to-end (Playwright)
npm run test:coverage # Coverage des tests

Ajouter un nouveau nœud

  1. Définir le type dans src/data/nodeTypes.ts
  2. Implémenter l'exécution dans src/components/ExecutionEngine.ts
  3. Ajouter la configuration dans src/components/NodeConfigPanel.tsx
  4. Tester avec un workflow

📦 Services Supportés

🔥 Populaires

  • Google : Sheets, Drive, Calendar, Gmail
  • Microsoft : Office 365, OneDrive, Teams
  • AWS : S3, Lambda, RDS
  • Slack : Messages, channels, files
  • GitHub : Repos, issues, PRs

💼 Business

  • Salesforce : CRM, leads, contacts
  • HubSpot : Marketing, sales pipeline
  • Monday.com : Project management
  • Stripe : Payments, subscriptions
  • Shopify : E-commerce, orders
  • QuickBooks : Accounting
  • Zendesk : Support tickets

🤖 AI & Analytics

  • OpenAI : GPT models, completions
  • Google Analytics : Tracking, reports
  • Mixpanel : Events, funnels

Voir la liste complète →

🔧 Configuration

Variables d'environnement

# .env.local
VITE_API_URL=http://localhost:3000
VITE_WEBHOOK_BASE_URL=https://your-domain.com/webhook
VITE_STORAGE_TYPE=localStorage
RATE_LIMIT_MAX_REQUESTS=100

Credentials

Les credentials sont stockés de manière sécurisée avec encryption. Types supportés :

  • OAuth2 : Google, GitHub, Salesforce
  • API Key : OpenAI, Stripe, AWS
  • Basic Auth : Databases, SMTP
  • JWT : Custom APIs

🚀 Roadmap

Version 1.0 (Actuelle)

  • ✅ Interface complète
  • ✅ 150+ nœuds
  • ✅ Moteur d'exécution
  • ✅ Collaboration
  • ✅ Monitoring

Version 1.1 (Q1 2025)

  • 🔄 Backend API complet
  • 🔄 Authentication système
  • 🔄 Multi-tenancy
  • 🔄 Database persistence

Version 1.2 (Q2 2025)

  • 🔄 Custom nodes SDK
  • 🔄 Marketplace communautaire
  • 🔄 Advanced scaling
  • 🔄 Enterprise SSO

Voir la roadmap complète →

🤝 Contribution

Nous accueillons toutes les contributions !

Comment contribuer

  1. Fork le repository
  2. Créer une branche (git checkout -b feature/amazing-feature)
  3. Commit vos changements (git commit -m 'Add amazing feature')
  4. Push vers la branche (git push origin feature/amazing-feature)
  5. Ouvrir une Pull Request

Guidelines

  • Suivre les conventions TypeScript
  • Ajouter des tests pour les nouvelles fonctionnalités
  • Mettre à jour la documentation
  • Respecter le style de code (Prettier/ESLint)

Guide de contribution détaillé →

📄 License

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

🙏 Remerciements

  • n8n pour l'inspiration et l'excellence de leur plateforme
  • ReactFlow pour l'excellent library de nodes
  • Tailwind CSS pour le système de design
  • Zustand pour le state management simple

📞 Support


Créé avec ❤️ par l'équipe WorkflowBuilder Pro

⭐ Star ce repository si ça vous aide !

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •