Funding

This page presents up-to-date information regarding funding of AsmJit and Blend2D open-source projects.

Status

  • I reached out to some of the largest known users of AsmJit and Blend2D, particularly those using it at scale. Unfortunately, only one company responded, and they declined to provide support. Others have not replied.
  • Development of AsmJit and Blend2D is currently frozen. Without stable funding, I cannot dedicate working hours to these projects. Unless sustainable support is secured, the development will remain suspended with no new features, updates, or regular maintenance.
  • Organizations relying on these projects are encouraged to maintain their own forks and manage their own patches, should they need modifications or fixes.

The Right Audience

This text is primarily for companies and organizations that benefit from AsmJit or Blend2D in their products or infrastructure. These projects have grown too important and widely used to depend on unpaid spare-time development alone.

While I deeply appreciate the individuals and hobbyists who experiment with these libraries, sustainable progress requires corporate funding.

A Brief History

I began my projects simply as experiments:

  • AsmJit started as a way to explore JIT compilation at a time when no such library existed for building small and embeddable JIT compilers. Most JIT compilers implemented their own limited assemblers that only supported emitting the instructions they needed, but there was no universal library for writing JIT compilers like AsmJit with complete ISA support including SIMD with optional register allocation.
  • Blend2D was an attempt to build the fastest CPU-based 2D rendering library, motivated by my frustration with the performance of others and by the shortcomings I experienced with GPU-only renderers.

Over time, these projects grew well beyond experiments. They are now used in both open-source and commercial products, running on servers, desktops, and mobile devices - a very conservative estimate is tens of millions of deployments in total.

What Have the Projects Become?

AsmJit has a unique position among JIT compilers - it's tiny compared to other solutions and it allows to emit platform-specific assembly including SIMD with blazing speeds. Depending on the emitter type chosen AsmJit can emit up to 500 MB/s of machine code with Assembler and about 50 MB/s of machine code with Compiler, which provides register allocation and some other abstractions.

Blend2D has become the world's fastest software-based 2D rendering engine. It's not a bold claim, it has been supported by Blend2D's own benchmarks and also third-party benchmarks comparing Blend2D with Vello, which is a 2D rendering engine written in rust (more details here). Blend2D has a tiny team (me engineering it and Fabian focusing on geometry stuff) compared to other libraries and it still beats them all, because of its design choices. Blend2D even has an online fiddle that anyone can use to try it out.

Free Time Doesn't Last Forever

When I began publishing open-source work, I was a student with plenty of free time to experiment and share my results. Over the years, that free time has fluctuated, but I still managed to grow these projects into something widely adopted and impactful.

Today, circumstances are different: with a family and a full-time job, I can no longer dedicate large amounts of unpaid time to these projects. My professional work takes priority because it pays the bills, while open-source - despite its reach - does not.

This is the central challenge of open-source sustainability: without financial support, the development slows down or stops, regardless of how valuable the projects are.

A Drop in the Ocean

To date, only one company, Shiguredo Inc., has chosen to consistently support the software they rely on. I am sincerely grateful for their long-term support. They are a model of how the ecosystem should function.

However, it is not reasonable for a small company to shoulder the responsibility alone. These projects benefit a global user base, and their future depends on multiple organizations stepping up to contribute.

How to Support

What AsmJit and Blend2D need most is stable, recurring support. My time is already fully committed to a full-time job. The only way I can allocate time to these projects is if they are also backed by reliable funding. Occasional or one-time contributions, while appreciated, do not provide the stability required to plan development or maintenance.

Dedicated Position

  • One of the most effective ways to support either project is to fund a dedicated position that guarantees the required time allocation.
  • A company would have to guarantee part of my working time (or full-time) to focus on, maintain, and improve the libraries.
  • This position would also ensure closer collaboration, influence on the roadmap, and prioritized support for internal needs.

Long-Term Contracts

  • For organizations that rely heavily on AsmJit or Blend2D, long-term contracts (6-12 months or more) can secure ongoing development.
  • This ensures stability, continuity, and professional accountability, with the option of prioritizing relevant features or performance improvements.

Maintenance Agreements

  • Companies can enter into maintenance agreements that guarantee regular updates and bug fixes.
  • This approach minimizes risk by ensuring that the libraries you depend on are actively maintained.

Regarding funding, contracts, or dedicated support, please get in touch with me over email or LinkedIn.