
A perfect example of Flarum's customizability. This highly customised Dutch developer community has a unique layout, with beautiful elements like a custom loader. Created by the author of the popular SEO and Support Platform extensions.
A perfect example of Flarum's customizability. This highly customised Dutch developer community has a unique layout, with beautiful elements like a custom loader. Created by the author of the popular SEO and Support Platform extensions.
An avid adventurer and hiker, Mike has found Flarum to be an excellent platform for blogging about his trips, discussing gear, and meeting fellow hiking enthusiasts while slowly increasing engagement.
Leading provider of communication and entertainment in Switzerland. Their Flarum community creates a framework for healthy togetherness while supporting their customers with an appealing, user-friendly community experience.
Before starting the upgrade process, ensure you are on Flarum 1.0.0 or above in your Admin Dashboard or by typing❗Before you upgrade, make sure to create a backup of yourpublic/assets
directory, yourcomposer.json
and your database!
php flarum info
. If you're not, use the previous release notes for upgrading from an earlier version.🆘 If you run into any issues, please open a new discussion under the Support tag. Ignore similar discussions, and open a new one anyhow. Make sure to mention the output ofphp flarum info
,composer why-not flarum/core v1.4.0
, and any errors to their fullest.
$ npm uninstall -g flarum-cli
Now install the new package:$ npm install -g @flarum/cli
To run a command, use either flarum-cli
or fl
:$ flarum-cli COMMAND
$ fl COMMAND
To see a list of available commands, run either of:$ flarum-cli
$ flarum-cli --help
$ npm update -g @flarum/cli
flarum-cli init [PATH]
: Generates a blank extension skeleton, including all recommended infrastructure.flarum-cli infra backend-testing [PATH]
: Adds (or updates) infrastructure for running automated backend tests.flarum-cli make backend api-controller [PATH]
flarum-cli make backend api-serializer [PATH]
flarum-cli make backend api-serializer-attributes [PATH]
flarum-cli make backend command [PATH]
flarum-cli make backend event-listener [PATH]
flarum-cli make backend handler [PATH]
flarum-cli make backend integration-test [PATH]
flarum-cli make backend job [PATH]
flarum-cli make backend migration [PATH]
flarum-cli make backend model [PATH]
flarum-cli make backend policy [PATH]
flarum-cli make backend repository [PATH]
flarum-cli make backend route [PATH]
flarum-cli make backend service-provider [PATH]
flarum-cli make backend validator [PATH]
flarum-cli make frontend component [PATH]
flarum-cli make frontend modal [PATH]
flarum-cli make frontend model [PATH]
flarum-cli update js-imports [PATH]
: Adds admin/forum/common namespaces to all JS imports from flarum core.flarum-cli help [COMMAND]
@SKevo (As I mentioned) I wasn't there from the very beginning, but FreeFlarum's main idea is to provide a starting point for new communities. It can be hard to get a Flarum forum up and running for unskilled users that are unfamiliar with Linux-like OS-es. Thus, FreeFlarum was created - an automated, free service to aid you with the creation of your forum in a matter of minutes. And when your forum becomes too big for us, you can download all of your data and migrate to a self-hosted alternative very easily. I think it works pretty well and people like it so far!
How many forums does FreeFlarum currently host?@Sanguine We help you to launch - and own - your forum. Don't depend on big companies to communicate with your friends. Beautiful forum software should be available to anyone.
@SKevo Currently at around 2 000 forums are online at FreeFlarum. The peak is at around 2 700, and at that point we run a custom script to automatically archive unused forums to save disk space. These forums are then kept for around 1 - 2 months, available for reactivation.
What does this mean in numbers (necessary to cover those communities)?@Sanguine Since 2017, more than 20 thousand people have launched a forum with us, and almost half a million messages have been written. People from 172 countries are using FreeFlarum! It's truly mindblowing...
Top countries are the US, China, UK, India, Turkey, Russia.
Can you please introduce yourself @Sanguine and @SKevo and your role with FreeFlarum?@SKevo 70 GB of disk space on 8 GB RAM Hetzner server located in Germany. And some spare hours to help with support, server maintenance, etc...
@SKevo I am a young guy from Slovakia. I like software and computer stuff in general. I do programming just as a hobby
As for my role at FreeFlarum, at the very beginning, I found out that it had a GitHub page with documentation. I forked the repository and made some pull requests, documenting FreeFlarum and later a couple of Flarum's extensions. Sanguine noticed me and decided to give me collaborator rights. I want to thank him for this amazing opportunity - not everyone is so kind! It's amazing what we've accomplished together.
(I self-learned 90 % of it) and my main field of study is actually economics and accounting.
Anyways, I eventually have proven myself and got access to SSH. The beginning was rough because I haven't used or even touched anything Linux related before! Sanguine told me how some of the important stuff works in his spare time, but I have learned a lot by just experimenting and Googling. I can't believe how I am now doing stuff that I haven't heard of before 2 - 3 years on a daily basis now!
How much time does it take (per week) to keep running FreeFlarum so smoothly?@Sanguine I am a 42 yo programmer from the Netherlands. When my first kid was born in 2017, it was a stressful time, we spent months in the hospital. To distract myself a bit, I started a forum for people living on boats (as I do). I fell in love with the beauty of Flarum, but also noticed that it took some effort to get Flarum up and running, and many people were struggling with it. Eventually my houseboat forum failed miserably 😆 but I decided to help others and launch a Flarum-as-you-go service.
How much effort did you invest initially to make this service launch?@SKevo We try to automate as much as possible so that we can have more time to do other things that take priority in our lives. I'd say that FreeFlarum is pretty self-sustainable and stable. The only things that need our attention are E-mails, posts at Discuss and occasional server maintenance (cleaning up inactive forums, for example). I don't have any timetable - when an E-mail arrives, I read it, connect to SSH on my mobile and fix it, if I can. If I can't do it via mobile at that moment, I'll wait until I am able to resolve it through my computer.
Back to the original question, the time really varies. Sometimes replying to an E-mail is enough and takes about 5 minutes, sometimes you need to have a closer look at some problem a certain forum is having and it can take you 1 hour, and when you upgrade all forums to a new Flarum version, it can even take you 2 hours (you need to do all the backups, ensure that things are working as intended, notify users here at Discuss, etc...). But as for a person that enjoys this, I am not complaining.
@SKevo I believe that Sanguine can answer this, as I wasn't there yet so this isn't very relevant to me. From what I know, he found the process of setting up Flarum relatively difficult for non-Linux admins, so he wanted to make it simpler for people. I am sure that it was a tough job to seamlessly integrate everything together from scratch and he'll always have my huge respect for his incredible effort.
With the time and money needed to keep FreeFlarum afloat, how do you find the motivation to keep it running?@Sanguine It was about 2 months of programming (while my baby was napping) to build the core service and fix all the corner cases. The goal was to serve all forums from a single forum install, otherwise maintenance would quickly become a nightmare. To accomplish this, FreeFlarum uses some Linux voodoo under the hood, which keeps everything fast & secure.
But credits due: most of the later features were written over the years by the great SKevo. He's truly a pleasure to work with, and a treasure trove of enthusiasm and great ideas.
Obviously you have chosen Flarum as a platform. Why did you choose this over other community software?@SKevo My main motivation is that I like to help people and learn new things. We don't do it for the money, but for the people. The only income is from donations which we split between us when all expenses are paid. It's a big responsibility to run a service like this, sure, but it feels really great to be a part of something big and to make people happy.
@SKevo I'd say that the modern, responsive design and simplicity wins over other forum frameworks. Some of the other competitors look really dated in comparison to Flarum. Forums have been around for quite some time and reach back to the days of old internet, but Flarum really proves that you can make a forum software that is both simple and pleasant on eyes. It just works, and I am happy that it does, because none of this wouldn't be possible otherwise. Plus, the extensions are just perfect if you lack some feature and the community is very helpful.
Can you describe to our community members how you have automated the creation / management of Flarum forums?@Sanguine I liked Flarum because of its interface and its beauty in simplicity. It may seem easy, but I find it is actually really hard to create simple software. I also liked the vibe and culture in the Flarum community a lot. I have a lot of respect for all those people who are the driving force behind Flarum every day.
You are allowing a large number of extensions on your platform. How is your experience with the extension system of Flarum?@SKevo We use fancy Python magic (that's the programming language that FreeFlarum uses). It's easy to learn & write and great for automating boring tasks (like forum creation). It can sometimes be tricky to glue all the different components together by using just Python (Flarum is written in a different language - PHP), however the end results are worth it!
For the rest, we use a set of Python scripts to further automate things like SSL certificate renewal and listing forums daily, which we automate via Cron.
From a perspective as a large Flarum host - what are the features that you are missing the most?@SKevo Some time ago, it caused problems when two extension were incompatible and they could even brick someone's forum (we then had to manually intervene and disable problematic extensions for the forum). But luckily, the stable Flarum release really improved this and it hardly happens nowadays.
Overall, I am pretty satisfied with it right now. Extension developers can create some really wonderful extensions that change the face of Flarum itself, and that really gets me excited for what comes next!
From a user perspective are there any wishes that you would like to add?@SKevo I can't think of many. Maybe just a bigger server for more forums to host, but perhaps that'll happen in the future...
@SKevo I know that a lot of people would like to host larger forums, and they get upset when they find out about our 250 user limit in the Terms. This information is not very relevant anymore, as we have forums with more users that are fine. It comes from the FreeFlarum documentation, which is a bit outdated now. If I were an user, I'd want to have it improved. Hopefully I will finally have the time and passion to sit down and overhaul it very soon to prevent common misunderstandings. However, remember that there will still need to be a limit, as we are a free service and can't afford to host the next Facebook 😃
If you look to the future - what are the next steps for FreeFlarum? Are there any changes (or new services) planned?@Sanguine We don't miss any features in Flarum - the extension ecosystem is great! Our users frequently request extensions, and most of them get installed.
@SKevo From my side, yes to improvements. Last summer, we have improved the code base a lot. New features were added (such as forum directory, public API and a new page design), but that was still back when I wasn't that great at Python. This year, I am planning to improve it even further to make FreeFlarum more faster, stable, extensible and enjoyable for everyone. I hope that things go well and that we can make forum management even easier by September.
As for new services, I haven't forgot about my Flarum migrations project. I will look at that too, but FreeFlarum has a bigger priority for me at the moment.
As a final question: What can anyone do to support FreeFlarum remaining available for a long time?@Sanguine We don't have a specific schedule, but my long-time dream would be to offer a localized FreeFlarum service to specific countries that suffer from rigid censorship. For example, many of our users are from China. Our current service is operated from Germany, which is good for privacy but can be slow to Chinese users. Perhaps we can offer a translated service to Chinese users from Singapore or Japan.
@SKevo FreeFlarum is paid entirely from the wonderful donations of our users, and I want to thank you for that - it wouldn't be possible without you, people! I personally don't plan to stop anytime soon, and I hope that FreeFlarum will remain and improve for many more years to come.
A warm thank you to both of you for being available for this interview. It's most interesting to learn more about such an important part of the Flarum ecosystem. I hope the readers have enjoyed this interview as much as I did! As a last note I want to thank @Sanguine his long lasting commitment, after recently handing this project over to @SKevo.@Sanguine Some feedback or a small donation to cover our costs is always much appreciated. But most of all, happy users make us happy!
Learn how to harness the extensibility of Flarum to create your own extensions and customize your community.
Help us make Flarum even more powerful and customizable! Every bug report, pull request, and documentation improvement is a huge help.