Toby Zerner

Flarum: The Year Ahead

Flarum is a forum software project that I’ve been working on for a while. In fact, I first started working on design concepts way back in 2012. Since then, it’s been through a lot: numerous iterations, an entrepreneurial competition, a cancelled Kickstarter. But it still has never seen the light of day.

This year, that’s going to change. I’m taking the year off from medical school to build Flarum and finally make something of it. Here’s the plan.

Current State

In December, I threw some (very incomplete) code up on GitHub to generate a bit of interest and seek collaboration. Two months and 160 commits later, I’m really happy to have a functioning minimum viable demo. It’s still far from usable in the real world, but it demonstrates the kind of user experience you can expect to see more of. I’d love to get your feedback!

Roadmap

From here, I have a three-step plan for the rest of the year:

1. Build out the core with minimal features but a high capacity for extension.

Every community is different. A small gaming community won’t need the same feature-set as a large tech support forum. So having opinionated features built right in — ranking systems, social networking integration, signatures — ultimately leads to a bunch of useless bloat and complexity for everyone.

What if we were to take all of that bloat and complexity away? What would be left? Well, here’s what I think: users, discussions… and not much else. The Flarum core is the lowest common denominator of forum features. It’s a Lego baseplate, ready for a bunch of extensions to be stacked on top of it.

What you see in the minimum viable demo is the core about halfway complete. There’s still a lot to be done (user profile pages, administration interfaces, extension APIs) and this will take a couple of months.

2. Build a collection of default extensions to make Flarum compete with other forum software.

Once we have a baseplate, it’ll be time to start making some Lego pieces. I learnt during my time building esoTalk that when you break down a whole mess of features and distill them into individual pieces, you can end up with some really beautiful code and consistent user interface design.

I’ll spend another few months building extensions covering “essential” features like categories, moderation tools, and email notifications. (Take a look at the Features wiki page for an idea of what’s planned.) This is where Flarum will really start to come alive and take shape as a competitive forum product. Throughout this stage I’ll be looking for a bunch of kids (you) to play with (beta test) my Lego set (Flarum) and try and break it (report bugs).

3. Package it up and build an ecosystem so that Flarum is complete and sustainable.

As the third quarter of the year rolls around, hopefully Flarum’s core and default extensions will be edging towards stability. Work will begin on packaging everything up into a box, ready for the consumer. The focus will be on building a super easy installation process, documenting the extensions API, and setting up some kind of self-sustaining ecosystem.

I’m not exactly sure how this will all come together, but I do have some ideas floating around in my head. I want to build something like Extensions Store where developers can distribute and sell their work. I also have ideas about a hosting service with centralised accounts. We’ll see how things play out.

How You Can Help

If you’re passionate about forums and like where this is going, I’d love to have you on board! Get in touch, let me know who you are and where you’re coming from, and we’ll talk.