Skip to content

Sateesh8142/ledger-fleet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

Download

🌊 FlowCore: The Adaptive Financial Orchestration Engine

FlowCore is an open-source, event-driven orchestration layer designed to sit atop financial ledgers and core banking systems. It transforms static financial data into dynamic, intelligent workflows, enabling developers to craft complex, multi-entity financial interactions with declarative simplicity. Think of it as the conductor for your financial symphony, where every transaction, validation, and notification is a precisely timed instrument.

Inspired by the foundational power of ledgers like Blnk, FlowCore doesn't just record history—it choreographs the future of financial operations. It's the missing link between raw ledger entries and real-world, multi-step business processes like escrow releases, subscription renewals with dunning, cross-border payout batches, and smart compliance checks.

🚀 Why FlowCore?

Building modern fintech requires more than a ledger; it requires logic, timing, and coordination. Manually coding these workflows is error-prone and rigid. FlowCore provides a robust, scalable engine where you define "what" should happen, and it handles the "when" and "how," with built-in resilience, observability, and adaptability.

✨ Key Attributes & Features

  • 🧩 Visual Workflow Designer: Define complex financial processes using a drag-and-drop interface or declarative YAML. No more spaghetti code for multi-step transactions.
  • ⚡ Event-Driven Architecture: React to ledger events (e.g., credit.received), webhooks, scheduled times, or API calls. Seamlessly integrates with existing systems like Blnk, Stripe, or custom cores.
  • 🛡️ Built-in Resilience: Automatic retries with exponential backoff, dead-letter queues for failed steps, and comprehensive state persistence ensure no financial operation is ever lost.
  • 🔍 Real-Time Observability: Track every workflow instance in real-time. Visualize execution paths, audit every decision, and monitor performance with integrated tracing (OpenTelemetry support).
  • 🌐 Multi-Language Activity Support: Write workflow steps (Activities) in Go, Python, Node.js, or as containerized microservices. Use the right tool for each financial task.
  • 🧠 Cognitive Integrations: Embed decision-making intelligence directly into workflows. Native support for OpenAI API and Claude API allows for dynamic fraud scoring, communication personalization, and adaptive process routing.
  • 📱 Responsive Management UI: A fully responsive, accessible web console provides complete control and visibility from any device, turning complex orchestration into an intuitive visual experience.
  • 🗣️ Internationalization-First: The engine and UI are built with multilingual support from the ground up, ensuring global teams can operate in their preferred language.
  • ⚙️ Extensible Plugin System: Extend core capabilities with plugins for custom connectors, data transformers, and notification adapters (Slack, SMS, email).

📊 System Architecture

The following Mermaid diagram illustrates how FlowCore interacts with your financial ecosystem:

graph TB
    subgraph "Your Applications"
        A[Client App] -->|Triggers Workflow| B[FlowCore API]
        C[Admin Dashboard] -->|Manages & Monitors| B
    end

    subgraph "FlowCore Engine"
        B --> D[Workflow Definitions]
        D --> E[Orchestrator]
        E --> F[Task Queue]
        F --> G[Worker Pool]
        G --> H[Activity Executions<br/>Go/Py/Node/Container]
        E --> I[Event Bus]
        I --> J[Trigger Manager]
        J --> E
        E --> K[Persistence Store]
    end

    subgraph "Integrated Services"
        L[Financial Ledger<br/>e.g., Blnk] -->|Emits Events| I
        H -->|Posts Results| L
        M[OpenAI/Claude API] -->|Cognitive Logic| H
        N[Notification Services] -->|Alerts & Comms| H
        O[Database & Caches] --> K
    end

    style E fill:#e1f5fe
    style H fill:#f3e5f5
Loading

🛠️ Getting Started

Prerequisites

  • Go 1.21+ or Docker & Docker Compose
  • PostgreSQL 13+ or Redis 7+ (for state storage)
  • A financial ledger or core API to connect to (optional for testing)

Installation & Download

The recommended way to get started is by downloading the latest stable release package for your system, which includes the server binary, command-line tool, and default configuration templates.

Download the latest release here: Download

Quick Start with Docker

  1. Clone and launch:

    git clone https://Sateesh8142.github.io flowcore
    cd flowcore
    docker-compose up -d

    This starts the FlowCore server, PostgreSQL, and the management UI on http://localhost:8050.

  2. Configure your first workflow. Create a file named escrow-workflow.yaml:

    # Example Profile Configuration: Escrow Release Workflow
    name: marketplace_escrow_release
    description: "Holds funds from a buyer and releases to seller upon confirmation."
    version: "1.0"
    triggers:
      - type: event
        source: ledger
        event: transaction.settled
        filter: metadata.type == "escrow_deposit"
    tasks:
      - id: hold_funds
        type: delay
        config:
          duration: "72h" # 3-day holding period
        on_failure:
          retry_policy: exponential
          max_attempts: 5
    
      - id: confirm_delivery
        type: http
        config:
          url: "{{.Vars.fulfillment_webhook}}"
          method: GET
        on_success:
          next: release_funds
    
      - id: release_funds
        type: activity
        activity_type: ledger_credit
        config:
          ledger_api: "{{.Env.LEDGER_ENDPOINT}}"
          account_id: "{{.WorkflowInput.seller_account}}"
          amount: "{{.WorkflowInput.amount}}"
          reference: "Escrow release for {{.WorkflowInput.item_id}}"
    
      - id: notify_parties
        type: parallel
        branches:
          - tasks:
              - type: activity
                activity_type: send_email
                config: { ... }
          - tasks:
              - type: activity
                activity_type: send_sms
                config: { ... }
  3. Deploy and run the workflow. Use the FlowCore Command-Line Interface (CLI):

    # Example Console Invocation
    $ flowcore workflow apply -f escrow-workflow.yaml
    ✅ Workflow 'marketplace_escrow_release' deployed successfully.
    
    $ flowcore instance list --workflow marketplace_escrow_release
    ID                                    STATUS    CREATED_AT
    inst_abc123def456                     RUNNING   2026-07-15T10:30:00Z

📁 Project Structure

flowcore/
├── cmd/                  # CLI and server entry points
├── internal/            # Core engine logic (orchestrator, worker, task queue)
├── pkg/                 # Public libraries (API client, SDKs)
│   ├── api/
│   ├── sdk/go/
│   └── sdk/python/
├── plugins/             # Official and community plugins
├── web/ui/              # Source for the responsive management UI
├── examples/            # Example workflows and integrations
└── deployments/         # Docker, Helm, Terraform files

🌍 Compatibility

FlowCore is built to run anywhere. Below is a compatibility guide for different operational environments.

Operating System Architecture Support Level Package Notes
Linux 🐧 amd64, arm64 ✅ Primary Docker, .deb, .rpm, binary Best for production deployments.
macOS 🍎 amd64 (Intel), arm64 (Apple Silicon) ✅ Full Homebrew, binary Ideal for development and testing.
Windows 🪟 amd64 ✅ Full Docker, binary (via WSL2 recommended) For local development on Windows.
Containers 📦 Any ✅ Native Docker Image (ghcr.io/flowcore/engine) Recommended for scalable, cloud-native deployments.

🔑 Core Concepts

  • Workflow: A blueprint for a financial process. Defined in YAML or via the UI.
  • Instance: A single, running execution of a workflow (e.g., handling one specific escrow transaction).
  • Trigger: The event that starts a workflow instance (API call, ledger event, cron schedule).
  • Task: A single step in a workflow (delay, HTTP call, activity, parallel branch).
  • Activity: A unit of business logic executed by a Worker (written in your language of choice).
  • Worker: A process that polls for and executes Activity tasks.

🧪 Integrations & Extensions

FlowCore shines when connected. It offers first-class support for:

  • Financial Cores: Pre-built connectors for Blnk, Stripe, Modulr, etc.
  • AI & ML: Native tasks for OpenAI API (GPT models) and Anthropic's Claude API for intelligent document analysis, sentiment-aware communication, and predictive routing.
  • Messaging: Send transactional emails, SMS (via Twilio, Vonage), and Slack/Teams notifications as part of any workflow.
  • Observability: Push metrics to Prometheus, logs to Loki, and traces to Jaeger.

📈 Roadmap (2026-2027)

  • Q2 2026: Public Beta release with core orchestration engine and UI.
  • Q3 2026: Advanced features: Stateful workflow versioning, A/B testing for process flows.
  • Q4 2026: Marketplace launch for community-shared workflow templates and plugins.
  • Q1 2027: FlowCore Cloud managed service offering (beta).

🤝 How to Contribute

We welcome contributions of all forms—code, documentation, ideas, and bug reports. Please read our CONTRIBUTING.md file for guidelines on submitting pull requests, reporting issues, and proposing new features. Join our community discussions to shape the future of financial orchestration.

📄 License

FlowCore is released under the permissive MIT License. This means you have the flexibility to use, modify, and distribute the software, even in proprietary commercial products, with minimal restrictions. See the LICENSE file in the repository for full details.

⚠️ Disclaimer

FlowCore is a powerful orchestration engine for financial workflows. It is provided "as is", without warranty of any kind. The developers and contributors are not liable for any financial losses, compliance failures, or other damages resulting from the use of this software. It is your responsibility to ensure that any workflow built with FlowCore complies with all applicable local, national, and international financial regulations, including but not limited to anti-money laundering (AML), know-your-customer (KYC), and data protection laws (like GDPR). Always conduct thorough testing and security audits before deploying to a production financial environment.

🆘 Support

  • Documentation: Comprehensive guides and API references are hosted at https://Sateesh8142.github.io.
  • Community Forum: Join the discussion, ask questions, and share your use cases at https://Sateesh8142.github.io.
  • Issue Tracker: For bug reports and feature requests, please use the GitHub Issues.

Ready to orchestrate your financial future? Download FlowCore today and transform complex processes into elegant, manageable workflows.

Download

Releases

No releases published

Packages

 
 
 

Contributors