fman build system

Electron alternative:
Python and Qt

Python and Qt are great for writing lightweight desktop apps.
But packaging, installers, code signing and automatic updates are a pain.
fbs solves these problems and saves you months of development.

Create a GUI in minutes

fbs is the fastest way to create a desktop app. It solves common tasks such as packaging and deployment. Based on Python and Qt, fbs is a lightweight alternative to Electron.

Easy Packaging

fbs makes deployment much easier than solutions such as PyInstaller alone. Create an installer for your app in seconds. Distribute it to your users – on Windows, Mac and Linux!

Open Source

fbs's source code is available on GitHub. You can use it for free in open source projects licensed under the GPL. Commercial licenses are also offered. More information below.

Battle-tested

Applications built with fbs have been installed on tens of thousands of machines. It encapsulates years of experience. This ensures your app runs on your users' computers.

Get Started

The best place to get started with fbs is the tutorial. All you need is a text editor and Python 3. In 15 minutes, you will create a simple app and an installer. Everybody who takes the tutorial says it's a breeze!

Licensing

You can use the free version of fbs in open source projects that are licensed under the GPL. If you don't want to open your code up to the public, you can purchase fbs Pro.

When using fbs, there are two other projects whose licensing terms you need to obey: Qt and one of its Python bindings. Qt can typically be used for free under the terms of the LGPL. This is also the case for the Python binding PySide6. On the other hand, the PyQt binding is only available under the stricter GPL.

Under the Hood

Instead of reinventing the wheel, fbs combines the best tools for each step: PyInstaller for packaging, NSIS for Windows installers, .dmg files on macOS, .deb files on Ubuntu. With fbs, you don't have to spend weeks integrating these technologies. It addresses common tasks such as shipping resource files and accessing them from within your application. Finally, it solves edge cases that only occur on some users' systems and would take precious time to debug yourself.

Background

fbs open sources solutions that were originally created for the cross-platform file manager fman. fman targets developer, so it needs to be very efficient on system resources. Especially startup time is important. Electron would not have met these requirements. That's why Qt and Python were chosen as an alternative.

Combining Python and Qt turned out to be a great idea. However, it was difficult to implement installers for the various operating systems, code signing and automatic updates. fbs fixes this. It gives you the productivity of Python and the speed of Qt, without having to spend months on tedious development tasks.