ΓBUNGSPROJEKT KDS
A powerful, production-ready workflow automation platform with visual workflow builder, AI integrations, and real-time monitoring.
SME FLOW AI is a comprehensive SaaS platform that enables users to create, manage, and execute complex workflows through an intuitive visual interface. Built with modern technologies and enterprise-grade architecture, it demonstrates full-stack development skills, API integrations, and scalable system design.
Demo Login: Click "Als Demo-Benutzer anmelden" for instant access!
No signup required β’ Mock data β’ Full functionality
π‘ Note: The demo runs in mock mode - all Google API integrations are simulated (no real API calls). Perfect for exploring the platform without API keys!
Real-time monitoring with performance metrics, resource usage, and activity tracking.
Drag-and-drop workflow creation with ReactFlow. Connect triggers, actions, and AI nodes.
Planning to add: 2-minute screen recording demonstrating:
- Demo login β Dashboard overview
- Creating a workflow with visual builder
- Real-time execution monitoring
- Analytics and metrics
For now: Try the live demo or run locally with docker compose up
- Drag-and-drop interface powered by ReactFlow
- Real-time workflow canvas with node connections
- Conditional branching and complex flow logic
- Visual feedback and validation
- Google Workspace: Sheets, Gmail, Calendar
- Google AI: Vision API, Natural Language Processing
- Google Ads: Campaign management and analytics
- Extensible architecture for custom integrations
- Real-time Monitoring: WebSocket-based execution tracking
- Queue System: Robust job processing with Bull + Redis
- Multi-tenancy: Complete organization isolation
- Authentication: JWT-based security with bcrypt
- Analytics Dashboard: Comprehensive usage metrics and insights
- Billing System: Subscription management and usage tracking
- Full TypeScript support
- Docker-based development environment
- Monorepo structure with npm workspaces
- RESTful API with Zod validation
- Real-time updates via Socket.IO
- Runtime: Node.js 18+ with TypeScript
- Framework: Express.js
- Database: PostgreSQL (Supabase)
- Queue: Bull with Redis
- Validation: Zod schemas
- Authentication: JWT + bcrypt
- Real-time: Socket.IO
- Framework: Next.js 15 (App Router)
- UI: React 18 with Tailwind CSS
- Workflow Canvas: ReactFlow
- State Management: React Context + Hooks
- HTTP Client: Custom API client with retry logic
- Containerization: Docker + Docker Compose
- Database: Supabase (PostgreSQL with RLS)
- Caching: Redis 7
- Development: Hot reload, volume mounting
git clone https://github.com/yourusername/sme-flow-ai.git && cd sme-flow-ai
cp sme-flow-backup/sme-flow-api/.env.example sme-flow-backup/sme-flow-api/.env
cp sme-flow-backup/sme-flow-client/.env.example sme-flow-backup/sme-flow-client/.env
docker compose up -d && npm install && npm run seed
# Open http://localhost:3000 β Click "Als Demo-Benutzer anmelden"Prerequisites:
Step 1: Clone & Setup
git clone https://github.com/yourusername/sme-flow-ai.git
cd sme-flow-ai
# Copy environment files
cp sme-flow-backup/sme-flow-api/.env.example sme-flow-backup/sme-flow-api/.env
cp sme-flow-backup/sme-flow-client/.env.example sme-flow-backup/sme-flow-client/.envStep 2: Start Services
docker compose up -dStep 3: Seed Demo Data
npm install
npm run seedStep 4: Access the App
- π Frontend: http://localhost:3000
- π API: http://localhost:8000
- π Demo Login: Click "Als Demo-Benutzer anmelden" - no credentials needed!
π‘ Tip: The demo uses mock Google APIs - no API keys required!
The seed script creates two example workflows:
Webhook Trigger β Sentiment Analysis (NLP) β Condition Check β Send Email
- Receives data via webhook
- Analyzes sentiment using Google NLP
- Sends confirmation email if positive
Daily Schedule β Image Analysis (Vision) β Append to Spreadsheet
- Runs daily at configured time
- Analyzes images with Google Vision
- Logs results to Google Sheets
# Server Configuration
PORT=8000
API_BASE_URL=http://localhost:8000
# Database (Supabase)
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_ANON_KEY=your-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
# Authentication
JWT_SECRET=your-secret-key-here
# Queue & Cache
REDIS_URL=redis://redis:6379
# Frontend URL (for CORS)
NEXT_PUBLIC_CLIENT_URL=http://localhost:3000
# Demo Mode (optional)
PROVIDERS=mock # Use 'google' for real APIs
ENABLE_GOOGLE_ADS=0 # Set to 1 to enable Google Ads# API Endpoint
NEXT_PUBLIC_API_URL=http://localhost:8000Option 1: Use Supabase Cloud (Recommended)
- Create a free account at supabase.com
- Create a new project
- Copy your project URL and keys to
.env - Run the schema from
sme-flow-backup/sme-flow-api/schema_fixed.sqlin the SQL editor - Run
npm run seedto populate demo data
Option 2: Use Local PostgreSQL
The Docker Compose setup includes a local PostgreSQL instance:
- Accessible at
localhost:54321 - Default credentials in
docker-compose.yml
SME/
βββ sme-flow-backup/
β βββ sme-flow-api/ # Backend API
β β βββ src/
β β β βββ SMEFlowWorkflowAPIServer.ts # Main server
β β β βββ workflow-engine.ts # Workflow execution engine
β β β βββ integrations/ # API integrations
β β βββ scripts/
β β β βββ seed.ts # Database seeding
β β βββ Dockerfile
β β βββ package.json
β β
β βββ sme-flow-client/ # Frontend (Next.js)
β βββ src/
β β βββ app/ # Next.js App Router
β β βββ components/ # React components
β β βββ lib/ # API clients & utilities
β β βββ styles/ # Global styles
β βββ Dockerfile
β βββ package.json
β
βββ docker-compose.yml # Multi-service orchestration
βββ package.json # Root workspace config
βββ LICENSE # MIT License
βββ README.md # This file
- Mock Google API providers (no real API calls)
- JWT-based authentication
- Bcrypt password hashing
- Row-Level Security (RLS) with Supabase
- Service role key for admin operations
- CORS whitelist protection
- Rate limiting on authentication routes
- Enable OAuth2 for Google account connections
- Encrypt stored OAuth tokens in database
- Implement HTTPS/TLS
- Set up environment-specific secrets management
- Enable audit logging
- Implement 2FA for user accounts
- Set up monitoring and alerting
# Install all dependencies
npm install
# Start development (with Docker)
docker compose up --build
# View logs
docker compose logs -f api
docker compose logs -f web
# Stop all services
docker compose down
# Rebuild specific service
docker compose up -d --build api
# Seed database
npm run seed
# Build API
cd sme-flow-backup/sme-flow-api && npm run build
# Build Client
cd sme-flow-backup/sme-flow-client && npm run build# API (requires Redis & PostgreSQL)
cd sme-flow-backup/sme-flow-api
npm install
npm run build
npm start
# Client
cd sme-flow-backup/sme-flow-client
npm install
npm run devFor Recruiters & Technical Interviewers:
This project showcases production-ready full-stack development skills:
- β Modern TypeScript Stack: End-to-end type safety (Frontend β Backend β Database)
- β System Architecture: Microservices, message queues, real-time communication
- β API Design: RESTful endpoints, WebSocket integration, OAuth2 flows
- β Database Engineering: Multi-tenant PostgreSQL with Row-Level Security
- β DevOps & Deployment: Docker, CI/CD ready, cloud deployment guides
- β Security Best Practices: JWT auth, bcrypt hashing, CORS, rate limiting
- β SaaS Architecture: Subscription models, usage tracking, billing systems
- β User Experience: Intuitive visual editor, real-time feedback, responsive design
- β Scalability: Queue-based processing, Redis caching, horizontal scaling ready
- β Documentation: README, deployment guides, security policies, contribution guidelines
- Multi-tenancy: Complete data isolation per organization
- Real-time Processing: Socket.IO for live execution updates
- Async Workflows: Bull queue for background job processing
- Visual Programming: ReactFlow integration for drag-and-drop workflows
- AI Integrations: Provider pattern for swappable API implementations
- Workflow Templates: Pre-built workflow library
- Webhook Designer: Visual webhook endpoint creator
- Advanced Scheduling: Cron expressions, timezone support
- Error Recovery: Automatic retry with exponential backoff
- Audit Logs: Complete activity tracking
- Team Collaboration: User roles and permissions
- API Marketplace: Community-contributed integrations
- Mobile App: React Native companion app
- Migration to BullMQ (from Bull)
- Comprehensive test suite (Jest, Playwright)
- CI/CD pipeline (GitHub Actions)
- Performance monitoring (Sentry, Datadog)
- API documentation (Swagger/OpenAPI)
- GraphQL API layer
- Kubernetes deployment configs
This project is licensed under the MIT License - see the LICENSE file for details.
As a full-stack developer, I wanted to demonstrate:
- Complex System Design: Multi-tenant SaaS architecture with real-time features
- Modern Tech Stack: Latest Next.js, TypeScript patterns, and cloud-native tools
- Production Thinking: Security, scalability, documentation, and deployment readiness
- Business Understanding: SaaS metrics, billing systems, usage tracking
This project represents the kind of architecture and code quality I bring to production applications.
Ozgur Azap
Full-Stack Developer | TypeScript Specialist | SaaS Architecture
- Portfolio: Your Website
- LinkedIn: Your Profile
- Email: [email protected]
- GitHub: View More Projects
- Built with Next.js
- UI components styled with Tailwind CSS
- Workflow visualization powered by ReactFlow
- Database hosted on Supabase
- Icons from Lucide
This is a portfolio project showcasing full-stack development capabilities. While it's not actively accepting contributions, feel free to:
- β Star this repository if you find it helpful
- π Report bugs via GitHub Issues
- π‘ Share feedback and suggestions
- π Fork and adapt for your own projects
Made with β€οΈ for recruiters and developers looking for a comprehensive full-stack example

