# 🚀 Unified n8n Workflow Documentation System A comprehensive, unified application that combines all the best features from multiple workflow documentation systems into one powerful platform. ## ✨ Features ### 🔍 **Advanced Search & Discovery** - **Full-text search** across all workflows with sub-100ms response times - **Smart filtering** by complexity, trigger type, category, and integrations - **Real-time search** with instant results - **FTS5-powered** search engine for lightning-fast queries ### 📊 **Comprehensive Analytics** - **Real-time statistics** with 2,055+ workflows analyzed - **488+ unique integrations** tracked and categorized - **16 smart categories** for automatic workflow organization - **Visual dashboards** with interactive charts and metrics ### 🎯 **Smart Categorization** - **AI Agent Development** - OpenAI, GPT, Claude, Gemini workflows - **Communication & Messaging** - Telegram, Slack, Discord, Email - **CRM & Sales** - Salesforce, HubSpot, Pipedrive integrations - **Social Media Management** - Twitter, Facebook, Instagram, LinkedIn - **E-commerce & Retail** - Shopify, WooCommerce, Stripe, PayPal - **Project Management** - Asana, Trello, Monday, Jira - **Data Processing & Analysis** - Database, SQL, CSV, Analytics - **Web Scraping & Data Extraction** - HTTP requests, HTML parsing - **Cloud Storage & File Management** - Google Drive, Dropbox, AWS S3 - **Marketing & Advertising Automation** - Email marketing, campaigns - **Financial & Accounting** - QuickBooks, Xero, financial tools - **Technical Infrastructure & DevOps** - APIs, webhooks, infrastructure ### 🔗 **Integration Analysis** - **Top integrations** with usage statistics - **Integration relationships** and patterns - **Popular combinations** and workflows - **Trend analysis** across the collection ### 📱 **Modern Interface** - **Responsive design** that works on all devices - **Dark/light theme** support - **Interactive search** with live results - **Beautiful UI** with modern design patterns ## 🚀 Quick Start ### Option 1: Direct Python Run ```bash # Install dependencies pip install -r unified_requirements.txt # Run the application python unified_app.py ``` ### Option 2: Docker (Recommended) ```bash # Build and run with Docker Compose docker-compose -f unified_docker-compose.yml up --build # Or build manually docker build -f unified_Dockerfile -t unified-workflows . docker run -p 8080:8080 unified-workflows ``` ### Option 3: Docker Compose ```bash # Start the unified system docker-compose -f unified_docker-compose.yml up -d # View logs docker-compose -f unified_docker-compose.yml logs -f # Stop the system docker-compose -f unified_docker-compose.yml down ``` ## 🌐 Access Points Once running, access the system at: - **Main Dashboard**: http://localhost:8080 - **API Documentation**: http://localhost:8080/docs - **Statistics API**: http://localhost:8080/api/stats - **Workflows API**: http://localhost:8080/api/workflows - **Categories API**: http://localhost:8080/api/categories ## 📊 API Endpoints ### Core Endpoints #### `GET /api/stats` Get comprehensive statistics about the workflow collection. **Response:** ```json { "total": 2055, "active": 215, "inactive": 1840, "triggers": { "Manual": 1342, "Scheduled": 410, "Webhook": 303 }, "complexity": { "high": 716, "medium": 774, "low": 565 }, "total_nodes": 29518, "unique_integrations": 488, "last_indexed": "2025-08-06T03:09:57.893739", "categories": ["AI Agent Development", "Communication & Messaging", ...], "top_integrations": [ {"name": "OpenAI", "count": 255}, {"name": "Telegram", "count": 183}, {"name": "Gmail", "count": 181} ] } ``` #### `GET /api/workflows` Search and filter workflows with advanced querying. **Parameters:** - `q` - Search query (full-text search) - `page` - Page number (default: 1) - `per_page` - Items per page (default: 20, max: 100) - `complexity` - Filter by complexity (low/medium/high) - `trigger` - Filter by trigger type - `active_only` - Show only active workflows - `category` - Filter by category **Example:** ```bash # Search for Telegram workflows GET /api/workflows?q=Telegram&per_page=10 # Get high complexity workflows GET /api/workflows?complexity=high&per_page=20 # Search AI workflows in Communication category GET /api/workflows?q=AI&category=Communication%20%26%20Messaging ``` #### `GET /api/categories` Get all categories with workflow counts. #### `GET /api/integrations` Get all integrations with usage statistics. #### `GET /api/workflows/{id}` Get detailed information about a specific workflow. #### `GET /api/workflows/{id}/json` Download the JSON file for a specific workflow. #### `POST /api/reindex` Reindex all workflows (useful after adding new files). ## 🔧 Configuration ### Environment Variables - `PYTHONUNBUFFERED=1` - Enable unbuffered Python output - `DATABASE_PATH` - Custom database path (default: unified_workflows.db) ### Database The system uses SQLite with FTS5 for full-text search: - **Main database**: `unified_workflows.db` - **FTS5 index**: `workflows_fts` virtual table - **Statistics**: `statistics` table - **Categories**: `categories` table ### File Structure ``` unified-app/ ├── unified_app.py # Main application ├── unified_requirements.txt # Python dependencies ├── unified_Dockerfile # Docker configuration ├── unified_docker-compose.yml # Docker Compose ├── static/ │ └── workflows/ # Workflow JSON files ├── templates/ # HTML templates └── unified_workflows.db # SQLite database ``` ## 📈 Performance ### Benchmarks - **Search Response Time**: < 100ms average - **Database Size**: ~50MB for 2,055 workflows - **Memory Usage**: ~200MB RAM - **CPU Usage**: Minimal (< 5% average) ### Optimization Features - **SQLite FTS5** for lightning-fast full-text search - **Connection pooling** for database efficiency - **Async/await** for non-blocking operations - **Compressed responses** for faster loading - **Caching** for frequently accessed data ## 🎯 Use Cases ### For Developers - **Workflow Discovery** - Find existing workflows for reference - **Integration Research** - See how integrations are used - **Pattern Analysis** - Understand common workflow patterns - **API Development** - Use the REST API for custom applications ### For Teams - **Knowledge Sharing** - Share workflow knowledge across teams - **Best Practices** - Learn from existing workflow patterns - **Documentation** - Maintain workflow documentation - **Onboarding** - Help new team members understand workflows ### For Organizations - **Asset Management** - Track and manage workflow assets - **Compliance** - Monitor workflow usage and patterns - **Analytics** - Understand workflow adoption and usage - **Planning** - Plan future workflow development ## 🔍 Search Examples ### Find AI Workflows ```bash GET /api/workflows?q=OpenAI GPT Claude ``` ### Find Communication Workflows ```bash GET /api/workflows?q=Telegram Slack Email ``` ### Find High Complexity Workflows ```bash GET /api/workflows?complexity=high&per_page=50 ``` ### Find Active Webhook Workflows ```bash GET /api/workflows?trigger=Webhook&active_only=true ``` ### Find E-commerce Workflows ```bash GET /api/workflows?category=E-commerce%20%26%20Retail ``` ## 🛠️ Development ### Adding New Features 1. Modify `unified_app.py` to add new endpoints 2. Update the database schema if needed 3. Add new Pydantic models for data validation 4. Test with the built-in API documentation ### Customizing Categories Edit the `categorize_workflow()` function in `unified_app.py` to add new categorization logic. ### Adding New Integrations The system automatically detects integrations from workflow nodes. No manual configuration needed. ## 📊 Monitoring ### Health Checks The Docker container includes health checks: ```bash # Check container health docker ps # View health check logs docker logs unified-n8n-workflows ``` ### Logs ```bash # View application logs docker-compose -f unified_docker-compose.yml logs -f # View specific service logs docker-compose -f unified_docker-compose.yml logs unified-workflows ``` ## 🔒 Security ### Best Practices - **Database isolation** - SQLite database is isolated - **Input validation** - All inputs are validated with Pydantic - **SQL injection protection** - Parameterized queries used - **File access control** - Limited file system access ### Production Deployment For production use: 1. Use HTTPS with reverse proxy (nginx) 2. Implement authentication if needed 3. Use external database (PostgreSQL/MySQL) 4. Set up monitoring and logging 5. Configure backup strategies ## 🤝 Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Test thoroughly 5. Submit a pull request ## 📄 License This project is open source and available under the MIT License. ## 🆘 Support For issues and questions: 1. Check the API documentation at `/docs` 2. Review the logs for error messages 3. Test the health check endpoint 4. Verify the database is properly initialized --- **🚀 Ready to explore 2,055+ workflows with 488+ integrations in one unified system!**