Our story

Born in banking.
Built for everyone.

Firefly began with the work of building a core banking platform. That experience led to a broader idea: make the patterns behind complex applications easier for every team to use.

Follow the story

A practical
beginning.

A banking application connects many responsibilities: accounts, payments, lending, customer information, and the services around them. Each part needs clear boundaries, reliable communication, and a way to work with the rest.

Building Firefly's banking platform made those shared needs concrete. The Java framework brought reusable application patterns together, so teams could focus more of their code on the business they were building.

How the idea grew
  1. A banking platform

    Connect financial services through a shared application architecture.

    AccountsPaymentsLending
  2. Reusable patterns

    Bring common responsibilities into building blocks that work beyond one product.

    DomainApplicationInfrastructure
  3. Native frameworks

    Express the shared ideas through the conventions of each language.

    JavaPythonPHPRustC# / .NET

The questions
are shared.

Where do business rules belong? How should an application coordinate a use case? How can it connect to a database, message broker, or external provider without spreading infrastructure decisions through the domain?

These questions appear well beyond banking. Firefly gives teams a common vocabulary for answering them, with explicit boundaries between business behavior and the systems around it.

Explore the architectural approach

The organizations
behind the work.

The banking platform and the open-source frameworks share an origin, with different roles in the Firefly ecosystem.

Firefly Software
Solutions Inc.

The company developed the Firefly core banking platform and offers services for teams building financial applications, including managed platform options and consulting.

Explore the platform and services

Firefly Software
Foundation

Established by Firefly Software Solutions Inc. to support the open-source framework ecosystem, the Foundation brings its reusable architectural ideas to a broader community of developers.

Explore the open-source projects

Shared ideas.
Native expressions.

Today, the ecosystem includes Java, Python, PHP, Rust, and .NET implementations. Each belongs in its own language, with its own capabilities and integrations.

Choose the implementation that fits your team, then explore its programming model, source code, and learning resources.

A wider purpose.
A place to start.

Read the source, follow a working example, and choose the building blocks your application needs.