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.49.tar.gz (871.5 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.49-py3-none-any.whl (884.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fuse_io-0.1.49.tar.gz
  • Upload date:
  • Size: 871.5 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.49.tar.gz
Algorithm Hash digest
SHA256 c2721946fcd7912d873a14054f7e8f28115ef4acf62493dd5ac7ee98a443c35c
MD5 058e5d0fb12e5d214f8e30e8f6b0965e
BLAKE2b-256 b20bed3fdb37ba2261c4dde030aef89c30d3893480ed5cc95e8c420672213750

See more details on using hashes here.

Provenance

The following attestation bundles were made for fuse_io-0.1.49.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.49-py3-none-any.whl.

File metadata

  • Download URL: fuse_io-0.1.49-py3-none-any.whl
  • Upload date:
  • Size: 884.8 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.49-py3-none-any.whl
Algorithm Hash digest
SHA256 c76017135ccafd14d41a9be92325d0965dc81069bbb48d38a28454f33cb4cdf0
MD5 18139dd7f47dbfaf56c4132817437fc1
BLAKE2b-256 a1f3587dee355689655540d8917b50bfc0da2ed0286c0dc2cffbf7b8c548eb97

See more details on using hashes here.

Provenance

The following attestation bundles were made for fuse_io-0.1.49-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