fbs is the fastest way to create a Python GUI. It solves common pain points such as packaging and deployment. Based on Python and Qt, fbs is a lightweight alternative to Electron.
Unlike other solutions, fbs makes packaging easy. Create an installer for your app in seconds and distribute it to your users – on Windows, Mac and Linux!
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.
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. On the other hand, the PyQt Python binding is only available under the GPL. To comply with its license, you need to open source your application itself under the GPL, or buy a commercial PyQt license. You can avoid this by using PySide instead of PyQt. The drawback is that it is not yet quite as mature as PyQt.
Instead of reinventing the wheel, fbs builds on well-tested solutions: 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 lots of tedious time to figure out yourself.
fbs open sources solutions that were originally implemented for the cross-platform file manager fman. Months of fman's development went into creating installers for the various operating systems, code signing and automatic updates. fbs gives you the same results in minutes instead of months.