Source: https://fireflyframework.org/
Language: en

# One architecture for your services, in the languages your teams already use.

Firefly Framework is open source and covers Java, Python, PHP, Rust, and .NET. Its frameworks build on stacks your teams run: Spring Boot, FastAPI, Laravel, Axum, or ASP.NET Core.

[Choose a framework](https://fireflyframework.org/#frameworks) [See the architecture](https://fireflyframework.org/#architecture)

Modules assembling into one application

Why teams adopt it

## Firefly Framework handles the wiring around your business code.

Every service needs composition, persistence conventions, messaging, multi-step processes, resilience, identity, and operations. With the native stack alone, that wiring is your teams’ code, and it differs from service to service.

### Your native stack still runs the service

FastAPI and SQLAlchemy stay under pyfly, Laravel and Eloquent under larafly. Those libraries route and validate requests, run queries, and commit transactions.

### Services share their plumbing

On one framework, services use the same command and query dispatch and the same event contract. All five frameworks run multi-step operations as compensating sagas.

### Your team writes the business rules

Your code holds the domain logic, the permission rules, and the compensating actions. The database and the message broker are your team’s choice.

Frameworks by language

## Five languages, each with its own framework.

Each framework follows its language’s conventions and has its own modules. A shared name doesn’t mean the same features, so each page lists what its framework provides.

### jafly

Java

Spring Boot 3.5 · WebFlux · Java 25

jafly comes as modules a service adds as needed: commands and queries, orchestration for sagas and try-confirm-cancel, reactive transactions, and observability.

[Explore jafly](https://fireflyframework.org/frameworks/java/)

### pyfly

Python

Starlette or FastAPI · Python 3.12+

pyfly adds typed dependency injection, CQRS handlers, and sagas to async services, with SQLAlchemy repositories and server-rendered HTML.

[Explore pyfly](https://fireflyframework.org/frameworks/python/)

### larafly

PHP

Laravel 13 · PHP 8.3+

larafly compiles PHP attributes for components, transactions, and security rules. It adds CQRS, a transactional outbox, sagas, and event sourcing.

[Explore larafly](https://fireflyframework.org/frameworks/php/)

### rsfly

Rust

Tokio · Axum · Rust 1.88+

rsfly gives Rust services dependency injection, typed CQRS dispatch, compensating sagas, and SQLx repositories with explicit not-found and optimistic-lock results.

[Explore rsfly](https://fireflyframework.org/frameworks/rust/)

### netfly

C# / .NET

ASP.NET Core · .NET 10

netfly validates and dispatches commands, coordinates attribute-based sagas, and returns structured HTTP errors. It registers through the host’s own dependency injection.

[Explore netfly](https://fireflyframework.org/frameworks/dotnet/)

How an application is built

## Domain logic in the middle, infrastructure at the edges.

All five frameworks share this design and fill its blocks with their own modules and integrations.

One application, five building blocks / Conceptual architecture

A request crosses the framework’s buses to the domain, and adapters and repositories reach providers and databases.

### Your domain

Business rules, entities, and use cases live here, with no transport or provider code.

### Application capabilities

The framework’s modules dispatch commands and queries and publish events around the domain.

### Application boundaries

HTTP controllers and event consumers turn each request into a command or a query.

### System integrations

Configuration picks the adapters that reach external services and brokers through shared contracts.

### Data and infrastructure

Repositories sit between the domain and the databases your team picks and configures.

Graphite: your domain · Amber: application capabilities · Ivory: application boundaries · Steel: system integrations · Slate: data and infrastructure

Beyond the frameworks

## A software factory, AI agents, and long-⁠running business processes.

### Firefly Forge

Firefly Forge turns a product brief into verified pyfly or larafly software. Coding agents work on bounded tasks, and every check leaves a record.

[Explore Firefly Forge](https://fireflyframework.org/forge/)

### Firefly Agentic

Firefly Agentic is a Python library for agents with tools, memory, and retrieval on Pydantic AI. Your application collects approvals or denials for marked tools.

[Explore Firefly Agentic](https://fireflyframework.org/agentic/)

### Firefly Weave

Built on pyfly, Firefly Weave runs business processes across your systems and people. A run waits for approvals and events and records its steps.

[Explore Firefly Weave](https://fireflyframework.org/weave/)

Evaluate it

## Read the source, the books, and the samples before you decide.

The repositories are public on GitHub under their own licenses, and every framework except netfly publishes releases. Four books, in English and Spanish, PDF and EPUB, build the jafly, pyfly, larafly, and rsfly samples.

Front cover of jafly by example

### jafly by example

Follows Lumen Lending, a personal-loan origination service, from reactive APIs to orchestration.

[Read about the book](https://fireflyframework.org/frameworks/java/#book)

Front cover of pyfly by example

### pyfly by example

Builds the Lumen wallet and ledger service, with an appendix on server-rendered HTML and forms.

[Read about the book](https://fireflyframework.org/frameworks/python/#book)

Front cover of larafly by example

### larafly by example

Takes the Lumen wallet service on Laravel from HTTP endpoints to the transactional outbox.

[Read about the book](https://fireflyframework.org/frameworks/php/#book)

Front cover of rsfly by example

### rsfly by example

Composes Lumen Ledger from typed services on Tokio, Axum, and SQLx, with events and persistence.

[Read about the book](https://fireflyframework.org/frameworks/rust/#book)

Who maintains it

## Built inside a core banking platform, maintained in the open.

Its projects kept settling the same questions: where a business area ends, and how services call one another. The Firefly Software Foundation maintains the frameworks, and Firefly Software builds its services on them.

[Read the story](https://fireflyframework.org/about/)

First step

## Start with one service.

Pick the framework for its language and run its sample application. Each framework’s documentation walks through the first request.

[Choose a framework](https://fireflyframework.org/#frameworks) [View the source](https://github.com/fireflyframework)
