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.32.tar.gz (883.7 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.32-py3-none-any.whl (888.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fuse_io-0.1.32.tar.gz
  • Upload date:
  • Size: 883.7 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.32.tar.gz
Algorithm Hash digest
SHA256 89c61608a5b57483a237794431dbc7be5850a0fb6ea6d356c482fa123dbae53d
MD5 e3f681bbac1b1bc97439aa12ccd5847a
BLAKE2b-256 72e9679f34f2e7f47cee1828462fb7d7d51a2445dd1d3c183e12352960bcc4fb

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: fuse_io-0.1.32-py3-none-any.whl
  • Upload date:
  • Size: 888.6 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.32-py3-none-any.whl
Algorithm Hash digest
SHA256 1e977f97813968f1ad02ce6b3734690d9877af6e89edc531061169571546bfd4
MD5 323d6d5c3adb016b5c5fcb6539306102
BLAKE2b-256 a2b640f1f237de224e6245c6e0b74b85ef3b48cc65677ea51c446fad572f46ff

See more details on using hashes here.

Provenance

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