AURA is a comprehensive, scalable workflow automation platform that combines AI-powered workflows, real-time collaboration, cross-platform desktop automation, and enterprise-grade infrastructure.
aura/
β
βββ apps/
β βββ web/ # Next.js Admin UI (cross-platform)
β βββ docs/ # Documentation + API reference
β
βββ packages/
β βββ core/ # Workflow engine wrapper (n8n-core)
β βββ plugins/ # All integrations & custom nodes
β βββ db/ # TypeORM entities + DB connectors
β βββ utils/ # Shared utilities (logging, validation)
β βββ auth/ # JWT/OAuth & RBAC logic
β βββ types/ # TS type definitions
β βββ ai/ # RAG, MCP, GPT integration wrapper
β
βββ services/
β βββ workflow-engine/ # Executes workflows (containerized)
β βββ webhook-handler/ # Listens for external events
β βββ scheduler/ # Cron/interval workflows
β βββ notification/ # Slack/email/SMS notifications
β βββ real-time-agent/ # Cross-platform desktop agent (Windows/Linux/macOS)
β βββ collaboration/ # Multi-user real-time sync
β
βββ deployments/
β βββ docker/ # Dockerfiles & docker-compose
β βββ k8s/ # Kubernetes manifests
β βββ scripts/ # Deployment scripts
- Built on n8n-core and n8n-workflow
- Queue-based execution using BullMQ and Redis
- Dynamic plugin loading
- Horizontal scaling support
- Multi-user workflow editing
- Operational transformation (OT) for conflict-free editing
- Real-time presence indicators
- Socket.io-based synchronization
- Electron-based desktop application
- Windows, macOS, and Linux support
- Screen capture and automation
- Mouse and keyboard control
- Secure WebSocket connection to workflow engine
- GPT-4/GPT-5 integration
- RAG (Retrieval-Augmented Generation) support
- MCP (Model Context Protocol) for tool calling
- Vector database support (Pinecone, Weaviate)
- Slack integration
- Email (SMTP)
- SMS (Twilio)
- Push notifications (Firebase)
- JWT-based authentication
- OAuth 2.0 (Google)
- Role-based access control (RBAC)
- Admin, Editor, Viewer, User roles
- TypeORM with SQLite (dev) or PostgreSQL (prod)
- Migrations support
- Entity relationships
- Caching layer ready
| Layer | Tech / Library |
|---|---|
| Workflow engine | n8n-core, n8n-workflow, n8n-nodes-base |
| Plugins | @slack/web-api, @octokit/rest, googleapis, axios |
| AI / RAG / MCP | openai, langchain, pinecone/weaviate |
| Desktop agent | electron, robotjs, desktopCapturer |
| Real-time voice | whisper, vosk, google TTS, ElevenLabs |
| Real-time comms | WebRTC, mediasoup, socket.io |
| Database | SQLite (dev), PostgreSQL/MySQL (prod) |
| Scheduler | node-cron, agenda, BullMQ |
| Notification | nodemailer, twilio, Slack API |
| Web admin | Next.js, React, Tailwind, React Flow, Socket.io |
| Auth | JWT, bcrypt, next-auth |
| Deployment | Docker, Kubernetes, CI/CD pipelines |
The fastest way to get started with AURA - just like n8n's simple approach:
# Single command to get started (creates config, builds, and starts)
./scripts/quickstart.shThat's it! AURA will be running at http://localhost:3000
Like :
- β Single port access (3000) - all services through gateway
- β Simple environment variables (no complex config)
- β Automatic setup
- β Dev container support
π See QUICK_START.md for details
Or use Docker directly:
# Development setup (single port, like n8n)
docker-compose -f docker-compose.dev.yml up -dFor the complete platform with all services:
# 1. Install (sets up everything)
./scripts/install.sh
# 2. Run (starts all services)
./scripts/run.sh
# 3. Stop (when you're done)
./scripts/stop.shπ For detailed installation instructions, see SIMPLE_INSTALL.md
Services will be available at:
- Gateway: http://localhost:3000
- Workflow Engine: http://localhost:3001
- Agent Service: http://localhost:3006
- Registry: http://localhost:3008
- Auth Service: http://localhost:3013
Useful commands:
# View logs
docker-compose logs -f
# Stop all services
docker-compose down
# Restart a specific service
docker-compose restart gateway
# Check service status
docker-compose psFor development without Docker:
- Node.js >= 18
- pnpm >= 10.0.0
- Redis (for queue and caching)
- PostgreSQL (for production) or SQLite (for development)
# Install dependencies
pnpm install
# Build all packages
pnpm build
# Start development servers
pnpm devCreate a .env file in the root directory:
# Database
DB_TYPE=sqlite # or postgres
DB_HOST=localhost
DB_PORT=5432
DB_USER=aura
DB_PASS=securepassword
DB_NAME=aura
# Redis
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
# JWT
JWT_SECRET=your-secret-key
# OAuth
GOOGLE_CLIENT_ID=your-client-id
GOOGLE_CLIENT_SECRET=your-client-secret
GOOGLE_CALLBACK_URL=http://localhost:3000/auth/google/callback
# OpenAI
OPENAI_API_KEY=your-openai-key
# SMTP
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=[email protected]
SMTP_PASS=your-app-password
# Slack
SLACK_TOKEN=xoxb-your-token
# Twilio
TWILIO_ACCOUNT_SID=your-sid
TWILIO_AUTH_TOKEN=your-token
TWILIO_FROM=+1234567890
# Firebase (for push notifications)
FIREBASE_SERVICE_ACCOUNT=path/to/service-account.json# Start workflow engine
cd services/workflow-engine
pnpm dev
# Start webhook handler
cd services/webhook-handler
pnpm dev
# Start scheduler
cd services/scheduler
pnpm dev
# Start notification service
cd services/notification
pnpm dev
# Start collaboration service
cd services/collaboration
pnpm dev
# Start web app
cd apps/web
pnpm devcd services/real-time-agent
pnpm start# Build and start all services
docker-compose -f deployments/docker/docker-compose.yml up -d
# View logs
docker-compose -f deployments/docker/docker-compose.yml logs -f
# Stop services
docker-compose -f deployments/docker/docker-compose.yml down# Deploy to Kubernetes
./deployments/scripts/deploy-k8s.sh
# Check status
kubectl get pods -n aura
# View logs
kubectl logs -f deployment/workflow-engine -n aura# Build all images
./deployments/scripts/docker-build.sh
# Or build individual services
docker build -f deployments/docker/Dockerfile.workflow-engine -t aura/workflow-engine:latest .GET /health- Health checkPOST /workflows/execute- Execute a workflowGET /workflows/:id/status- Get workflow status
GET /health- Health checkPOST /webhooks/register- Register a webhookGET /webhooks- List all webhooksDELETE /webhooks/:id- Delete a webhook
GET /health- Health checkPOST /notifications/send- Send a notificationPOST /notifications/send-bulk- Send bulk notifications
- WebSocket connection for real-time collaboration
- Events:
join_workflow,workflow_operation,presence_update
AURA supports dynamic plugin loading. Plugins are located in packages/plugins/src/:
- Slack - Slack integration
- GitHub - GitHub API integration
- Google Workspace - Google Workspace integration
- Email - Email sending
- Teams - Microsoft Teams integration
- Internal API - Internal API calls
- Create a new file in
packages/plugins/src/ - Implement the
AuraPlugininterface - Export the plugin
- Register it in
packages/plugins/src/index.ts
# Run migrations
cd packages/db
pnpm db:migrate
# Revert migrations
pnpm db:revert
# Seed database
pnpm db:seed- Development Guide - Setup and development workflow
- Architecture - System architecture and design
- Deployment Guide - Deployment instructions
- Contributing - Contribution guidelines
- Changelog - Version history and changes
- Implementation Status - Historical implementation status
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and linting
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE.md file for details.
For issues and questions:
- Check the documentation
- Search existing GitHub Issues
- Open a new issue if needed