Skip to main content

Fuse - Workflow automation. A powerful local-first automation platform with visual builder, AI integration, and extensive node library.

Project description

๐Ÿš€ Fuse - Workflow Automation

PyPI version Python 3.10+ License: MIT

Fuse is a powerful local-first workflow automation platform with visual builder, AI integration, and extensive node library. Build complex automations with a drag-and-drop interface, similar to n8n and Zapier, but optimized for local deployment and AI-powered workflows.

"Keep your workflows in constant fuse" โšก

โœจ Features

๐ŸŽจ Visual Workflow Builder

  • Drag-and-drop interface powered by React Flow
  • Real-time workflow execution with live log streaming
  • Support for parallel execution, loops, and conditional branching
  • 29+ pre-built nodes including triggers, actions, AI, and logic nodes

๐Ÿค– AI-Powered Automation

  • Built-in AI LLM nodes supporting OpenAI, Anthropic, and Google AI
  • AI Agent nodes for autonomous task completion
  • AI-assisted workflow generation from natural language prompts
  • Token usage tracking and cost monitoring

๐Ÿ”Œ Extensive Integration Library

  • Triggers: Manual, Cron, Webhook, Email, Form, RSS, WhatsApp
  • Actions: HTTP requests, Google Sheets, Slack, Discord, Email
  • Logic: Conditions, Switch/Case, Loops, Merge, Delay, Pause
  • Data: Transform, Store, Set Variables
  • Code: Python and JavaScript execution nodes

๐Ÿ”’ Security & Performance

  • JWT-based authentication with secure session management
  • Rate limiting and circuit breaker patterns for external API calls
  • PostgreSQL database with Alembic migrations
  • Redis for caching and Celery task queue
  • WebSocket support for real-time updates

๐Ÿ“ฆ Installation

Quick Start

pip install fuse-io

Initialize and Start

# Initialize configuration
fuse init

# Start the server and builder
fuse start

Then open your browser to http://localhost:5678 ๐ŸŽ‰

Custom Configuration

fuse start --host 0.0.0.0 --port 3000 --workers 4 --reload

๐Ÿ›  Development Setup

Prerequisites

  • Python 3.10 or higher
  • PostgreSQL 14+
  • Redis 6+
  • Node.js 18+ (for frontend development)

Clone and Install

git clone https://github.com/fuse-io/fuse.git
cd fuse

# Backend setup
cd fuse_backend
pip install -e ".[dev]"

# Frontend setup
cd ../fuse_frontend
npm install
npm run dev

Environment Configuration

Create a .env file in the fuse_backend directory:

# Database
DATABASE_URL=postgresql://user:password@localhost:5432/fuse

# Redis
REDIS_URL=redis://localhost:6379/0

# Security
SECRET_KEY=your-secret-key-change-in-production

# AI API Keys (Optional)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GOOGLE_API_KEY=AIza...

# OAuth (Optional)
GOOGLE_OAUTH_CLIENT_ID=...
GOOGLE_OAUTH_CLIENT_SECRET=...
SLACK_OAUTH_CLIENT_ID=...
SLACK_OAUTH_CLIENT_SECRET=...

Run with Docker

docker-compose up --build

Access the application at http://localhost:8000

๐Ÿ“š Usage Examples

Creating Your First Workflow

  1. Add a Trigger: Start with a Manual Trigger, Webhook, or Cron Schedule
  2. Add Actions: Connect HTTP Request, Google Sheets, or AI nodes
  3. Add Logic: Use conditions, loops, or parallel branches
  4. Test & Deploy: Click "Execute" to test, then activate for production

Example: AIowered Data Processing

# Workflow structure:
# Trigger (Manual) โ†’ HTTP Request โ†’ AI LLM โ†’ Transform โ†’ Google Sheets
  1. Fetch data from an API
  2. Process with AI (summarize, classify, extract)
  3. Transform the results
  4. Save to Google Sheets

Example: Scheduled Report Generation

# Workflow structure:
# Cron Trigger โ†’ Read Sheets โ†’ Loop โ†’ AI Agent โ†’ Email
  1. Run daily at 9 AM
  2. Read data from Google Sheets
  3. Loop through each row
  4. Generate insights with AI
  5. Send email report

๐Ÿ— Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚         Frontend (Next.js)              โ”‚
โ”‚   - React Flow Workflow Builder         โ”‚
โ”‚   - Real-time Logs (WebSocket)          โ”‚
โ”‚   - Node Configuration UI                โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                   โ”‚ HTTP + WebSocket
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚         Backend (FastAPI)               โ”‚
โ”‚   - REST API (JWT Auth)                 โ”‚
โ”‚   - WebSocket for live logs             โ”‚
โ”‚   - Workflow Engine                     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                   โ”‚
        โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
        โ”‚                     โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   PostgreSQL   โ”‚   โ”‚   Redis + Celery โ”‚
โ”‚  (Workflows &  โ”‚   โ”‚  (Task Queue &   โ”‚
โ”‚   Executions)  โ”‚   โ”‚     Cache)       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿš€ CLI Commands

# Start server
fuse start [--host HOST] [--port PORT] [--workers N] [--reload]

# Initialize project
fuse init

# Show version
fuse version

# Help
fuse --help

๐Ÿ” Security Best Practices

  1. Change default SECRET_KEY in production
  2. Use environment variables for sensitive data
  3. Enable rate limiting for public endpoints
  4. Use HTTPS in production deployments
  5. Regularly rotate API keys and credentials

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Development Workflow

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

๐Ÿ“ž Support


Made with โšก by Bibek Timilsina

Fuse - Keep your workflows in constant fuse ๐ŸŒŠ

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fuse_io-0.1.46.tar.gz (871.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fuse_io-0.1.46-py3-none-any.whl (884.9 kB view details)

Uploaded Python 3

File details

Details for the file fuse_io-0.1.46.tar.gz.

File metadata

  • Download URL: fuse_io-0.1.46.tar.gz
  • Upload date:
  • Size: 871.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fuse_io-0.1.46.tar.gz
Algorithm Hash digest
SHA256 663a0ea2cc6463cdd1b76a0ee496e940e20635b3d8956c5f8e3ebeb13fae41bd
MD5 ed9379f367e7abdaa9a564e07208fa83
BLAKE2b-256 e02cfeec07bac273aa2382be2f63f7c1539aa5bc37aff5e58f09cef68fecaaed

See more details on using hashes here.

Provenance

The following attestation bundles were made for fuse_io-0.1.46.tar.gz:

Publisher: publish-to-pypi.yml on bibektimilsina00/fuse_backend

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fuse_io-0.1.46-py3-none-any.whl.

File metadata

  • Download URL: fuse_io-0.1.46-py3-none-any.whl
  • Upload date:
  • Size: 884.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fuse_io-0.1.46-py3-none-any.whl
Algorithm Hash digest
SHA256 f099cfe5034e1a2065eefc876816781ca5d886bb8d80e144774bb52f707af82c
MD5 2940ae7c99b0c0531db881394f256c07
BLAKE2b-256 9cd04e0936962872fd1f176f958a23c3f0c7ab626a19f284f1e9a75de386cd35

See more details on using hashes here.

Provenance

The following attestation bundles were made for fuse_io-0.1.46-py3-none-any.whl:

Publisher: publish-to-pypi.yml on bibektimilsina00/fuse_backend

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page