A modern web interface for managing Floxy workflows with Go backend and React frontend.
Disclaimer: This app has not been tested in production yet. By using it, you are acting at your own risk.
Floxy Manager can be installed using Docker. The Docker image is available in GitHub Container Registry:
docker pull rom8726/floxy-manager:latestFor more installation options, see the Quick Start section below.
- SSO/SAML Authentication: Single Sign-On via SAML provider with Active Directory support. Configurable attribute mapping, automatic certificate generation, Identity Provider metadata support
- LDAP Integration: Full integration with LDAP/Active Directory for authentication and user synchronization. TLS/StartTLS support, connection pooling, user attribute synchronization, sync logging
- Two-Factor Authentication (2FA): Two-factor authentication based on TOTP (Time-based One-Time Password). QR code generation, brute-force protection via rate limiting, email code support for 2FA disable
- JWT Authentication: Secure authentication based on JWT tokens with access and refresh token support, configurable token lifetime
- Role-Based Access Control: Flexible role-based access control system
- Predefined roles: Project Owner, Project Manager, Project Developer, Project Viewer
- Granular permissions at project level
- Project membership management
- Permission checks at API and UI level
- Multi-Tenancy: Multi-tenancy support with data isolation between tenants
- Superuser Support: Superuser support with full access to all features
- GUI Workflow Builder: Visual workflow editor with interactive graph
- Drag-and-drop interface for workflow creation
- Support for various step types: Task, Condition, Fork, Join, Parallel, Human Decision, Save Point
- Step parameter configuration: handlers, conditions, retry policies, timeouts
- Visualization of connections between steps
- Export workflows to JSON format
- Workflow Visualization: Interactive graphs for workflow structure visualization
- Workflow Instances: Workflow instance management with detailed step and event viewing
- Dead Letter Queue (DLQ): Queue for processing failed workflow steps with requeue capability
- Workflow Statistics: Real-time workflow execution statistics
- Project Management: Complete project management
- Create, edit, and delete projects
- Project descriptions and metadata
- Hierarchy: Tenants → Projects → Workflows
- Project Memberships: Project member management with role assignment
- Project Permissions: Granular permissions at project level
- Audit Log: Complete audit log of all user actions
- Logging of create, update, delete operations
- Project-based filtering
- Pagination and search
- LDAP Sync Logs: Detailed LDAP synchronization logs with statistics
- Metrics & Health Checks: Prometheus metrics and health check endpoints
- Technical Server: Separate technical server for monitoring and debugging (pprof)
- User Management: Complete user management
- User creation and editing
- Password management and reset
- External user support (LDAP, SSO)
- Email Notifications: Email notification sending
- Password reset
- 2FA codes
- Other system notifications
- Password Management: Secure password storage with hashing
- Settings Management: System settings management with encryption of sensitive data
- Dashboard: Information dashboard with project overview and statistics
- RESTful API: Full REST API for all system features
- CORS Support: Cross-Origin Resource Sharing support
- Transaction Management: Database transaction management
- Dependency Injection: Dependency injection for component management
- Go Backend: High-performance Go backend
- React Frontend: Modern TypeScript/React interface
- Single Container: Backend and frontend in one Docker image
- PostgreSQL: PostgreSQL as primary database
- Database Migrations: Automatic database migrations
- Hot Reload: Hot reload in development mode
LogIn page:
Dashboard:
Workflow Builder:
Membership:
# Install dependencies
make install
# Start development mode (frontend + backend)
make dev# Build everything
make build
# Run production build
make run# Build Docker image
make docker-build
# Run with Docker
make docker-runFRONTEND_URL- Frontend URL (required, e.g.,http://localhost:3001orhttps://floxy.local)SECRET_KEY- Secret key for encryption (required)JWT_SECRET_KEY- Secret key for JWT tokens (required)API_SERVER_ADDR- API server address (required, e.g.,:443or:8080)POSTGRES_HOST- PostgreSQL host (required)POSTGRES_DATABASE- PostgreSQL database name (required)POSTGRES_USER- PostgreSQL user (required)POSTGRES_PASSWORD- PostgreSQL password (required)MAILER_ADDR- SMTP server address (required, e.g.,smtp.example.com:465)MAILER_USER- SMTP user (required)MAILER_PASSWORD- SMTP password (required)MAILER_FROM- Email sender address (required, e.g.,noreply@example.com)
TECH_SERVER_ADDR- Technical server address (default::8081)API_SERVER_READ_TIMEOUT- API server read timeout (default:15s)API_SERVER_WRITE_TIMEOUT- API server write timeout (default:30s)API_SERVER_IDLE_TIMEOUT- API server idle timeout (default:60s)API_SERVER_USE_TLS- Enable TLS for API server (default:false)API_SERVER_CERT_FILE- TLS certificate file pathAPI_SERVER_KEY_FILE- TLS private key file pathTECH_SERVER_READ_TIMEOUT- Technical server read timeout (default:15s)TECH_SERVER_WRITE_TIMEOUT- Technical server write timeout (default:30s)TECH_SERVER_IDLE_TIMEOUT- Technical server idle timeout (default:60s)
POSTGRES_PORT- PostgreSQL port (default:5432)POSTGRES_MAX_CONNS- Maximum database connections (default:20)POSTGRES_MAX_IDLE_CONN_TIME- Maximum idle connection time (default:5m)POSTGRES_CONN_MAX_LIFETIME- Maximum connection lifetime (default:10m)MIGRATIONS_DIR- Migrations directory path (default:./migrations)
ACCESS_TOKEN_TTL- Access token time-to-live (default:3h)REFRESH_TOKEN_TTL- Refresh token time-to-live (default:168h)RESET_PASSWORD_TTL- Password reset token time-to-live (default:8h)
ADMIN_EMAIL- Admin user email (optional)ADMIN_TMP_PASSWORD- Admin user temporary password (optional)
MAILER_ALLOW_INSECURE- Allow insecure SMTP connections (default:false)MAILER_USE_TLS- Use TLS for SMTP (default:false)MAILER_CERT_FILE- SMTP TLS certificate file pathMAILER_KEY_FILE- SMTP TLS private key file path
SAML_ENABLED- Enable SAML authentication (default:false)SAML_CREATE_CERTS- Create SAML certificates automatically (default:false)SAML_ENTITY_ID- SAML entity IDSAML_CERTIFICATE_PATH- SAML certificate file pathSAML_PRIVATE_KEY_PATH- SAML private key file pathSAML_IDP_METADATA_URL- Identity Provider metadata URLSAML_SSO_URL- SSO URL (optional, overrides metadata)SAML_ATTRIBUTE_MAPPING- Attribute mapping (e.g.,uid:username,mail:email)SAML_SKIP_TLS_VERIFY- Skip TLS verification (default:false)
LOGGER_LEVEL- Logging level (default:info, options:debug,info,warn,error)
GET /api/workflows- List workflow definitionsGET /api/workflows/{id}- Get workflow definitionGET /api/workflows/{id}/instances- Get workflow instancesGET /api/instances- List all instancesGET /api/instances/{id}- Get workflow instanceGET /api/instances/{id}/steps- Get instance stepsGET /api/instances/{id}/events- Get instance eventsGET /api/stats- Get workflow statistics
floxy-manager/
├── cmd/server/ # Go main application
├── internal/ # Internal Go packages
│ ├── config/ # Configuration
│ └── server/ # HTTP server
├── web/ # React frontend
│ ├── src/ # TypeScript source
│ ├── public/ # Static assets
│ └── dist/ # Built frontend
└── Dockerfile # Multi-stage Docker build
- Uses the Floxy library for workflow management
- HTTP server with CORS support
- Serves static files in production
- Development mode with fallback HTML
- Modern React with TypeScript
- Webpack for bundling
- Hot reload in development
- Production build optimization
See LICENSE file.



