Looking back at 740k+ installs
- Authors

- Name
- Michael Darko
- @mychidarko

We checked Packagist this week and the Leaf packages have passed 740,000 installs between them. That number crept up on us. Leaf started as a tiny router I wrote for my own projects in 2019, and the first release on Packagist went up on the 17th of October that year, so this is a good week to stop and look back at how we got here.
Our Story
Leaf was built as a lightweight router with a few helper classes around it, just so folks could build simple apps and APIs quickly without worrying about the bloat from bigger frameworks and the isolation of tiny alternatives. Leaf eventually grew, and somewhere around v3, we discovered the direction we wanted to build Leaf in.
- v3 introduced functional mode, modules and the crazy simplicity we're known for...
- v4 built on top of that, sharpening everything we had built in v3 and making the whole ecosystem more mature...
- v5 took everything we'd learnt about simplicity, modularity and our own experience with AI and shaped Leaf into the very first AI-native framework...built with agents in mind
This month, most of our modules are doing a record high in downloads, and per feedback received, lots of AI-users are enjoying a smooth building experience with lower costs and better context
Daily installs across every Leaf package, averaged by month, from the first Packagist release to this month. Each line marks a major version.
The big change
Throughout our journey, I'd say our biggest changes were v3 and v5. PHP frameworks traditionally fell into one of 2 categories:
- Batteries-included frameworks, meaning they give everything you'd need (or not need) to build your app, from authentication, queues, database stuff and more. In modern frameworks, all of those are initialized for you, meaning they're there whether you need them or not
- Microframeworks, which only give a router and probably an HTTP abstraction and error handling. Every other thing you'd add in your app is either a third-party install or a self-written feature
We took both of those concepts and combined them to make Leaf 3, introducing modules and making Leaf faster and lighter than ever, and that's why v3 was a major turning point for us.
But while this v3 a big change, we took an even bigger bet for v5.
Most devs couldn't yet wrap their heads around the fact that AI is here to stay, but we decided to double down on AI. We knew that at some point, we'd have more AI writing code than real humans and decided to rebuild the framework from the ground up with that in mind.
- A new route parser
- a new error handling system which AI could plug into and fix production bugs in near real-time
- Built-in AI rules
- Shared Leaf app context
- AI docs & manuals
- and a whole lot more AI-first tooling.
Of course, the human element from v4 still exists in its full glory, but the new AI infra has unlocked a whole new world of possibilities for building with Leaf, and we're seeing all the love from builders around the world.
From "AI slop" to the way things get built
But before all the love, there was a shit ton of hate. Leaf 5 was labelled as "AI slop" and we were literally laughed at for even suggesting the idea of a framework made for agents.
But just 2 months in, the whole narrative flipped. Most of the people we talk to now expect their next project to be written mostly by an agent, and they want a framework that makes that go well instead of pretending it is not happening.
The install graph shows the same shift. Since Leaf 5 shipped in August, installs have pretty much doubled compared to the months before. While Leaf 5 and all its tools have been blooming, Leaf MVC 5, has held steady at roughly 21 a day through the same period. Put the two together and the share of Leaf installs that are MVC projects has gone from about one in two at the start of 2025 to about one in three today.
This might seem strange, but we think we know why. Leaf MVC exists for humans: it gives you folders and conventions, plus a whole bunch of scaffolds and tools that make a project easier to hold in your head when you are the one typing. That is still valuable, and it is still what we recommend when a team is building something by hand.
However, fewer and fewer humans are starting a project from scratch themselves. The agent does, and an agent does not need the structure the same way a person does; it needs clear rules, small readable files, modules it can plug in instead of rewrite, and a memory of what was decided.
Leaf 5 was built around exactly that, with .leaf/CONTEXT.md, agent-readable docs and an error screen that hands the fix to your assistant, and those things work the same whether the project is MVC or plain Leaf. So MVC or not, agents are having a good time with Leaf, and the numbers say the plain version is where most of them start.
What we learned
It's been just a few months since Leaf 5, but Leaf itself is by no means new. We've had 5 different iterations, gone through so many eras of PHP and code in general. Here are some of our favourite lessons:
Small packages were the right bet. Splitting Leaf into modules felt like extra work in 2021, and it still means more releases to manage, but it is the reason a Leaf app stays small and the reason the install graph keeps climbing even for packages that are three years old.
The big jumps came from rewrites, never from marketing. 2021, 2025 and 2026 each show a step up in the graph, and each one lines up with a major version rather than a campaign. People install Leaf when it gets better at the thing they need.
The community carried it between the jumps. Leaf has never had a company behind it or a marketing budget. Besides this, it has never had more than a couple of people working on it at any one time. Every plateau in the graph is a period where the community kept using it, kept reporting bugs, and kept telling friends while we built the next version.
Thank you
This one is for everyone who ran composer require leafs/* at some point in our journey. The early adopters in Accra and all over the world who used v1 in production when it had no business being there. The contributors who sent fixes for modules I had not looked at in months. The people who wrote tutorials, answered questions on Discord, and moved their teams onto Leaf. And lately, the AI agents filing bug reports at 2am, which we did not see coming in 2019.
Building Leaf from a tiny country in Africa, and seeing its reach on pretty much every continent is one of the biggest honours ever, and it's all thanks to you.

There's still a ton more stuff coming. Leaf 5 is still rolling more features out across modules, a desktop app in private testing, and the next 740,000 installs should take a lot less than seven years.
Thank you for being here for the first batch.
Love - Michael & the team 🍁