FlameRobin is a software package for administration of Firebird DBMS. It is developed by:
- Milan Babuskov
- Nando Dessena
- Michael Hieke
- Gregory Sapunkov
- Bart Bakker
- Marius Popa
The following people also made a significant non-coding contributions:
- Alex Stanciu
- Barbara Del Vecchio
| Platform | Status |
|---|---|
| Windows | |
| Debian/Linux | |
| macOS | |
| Fedora Flatpak |
Notice: Now you can download latest Windows snapshot builds directly from the Build Flamerobin for Windows Action
For detailed build instructions for all supported platforms (Windows, Linux, macOS), see the BUILD.txt file.
Notice: FlameRobin is currently undergoing a major migration to the fb-cpp database library and has been upgraded to C++20. Please ensure contributions are compatible with the C++20 standard.
- Project Roadmap - Track the progress of the migration to
fb-cpp. - Security Roadmap - Track hardening and supply-chain security improvements.
- Database Abstraction Layer (DAL) & fb-cpp Migration - Detailed architectural documentation.
For producing a signed, notarized FlameRobin.app distributable to other
Macs (build + bundle dylibs + sign + notarize + staple + zip in one step),
see dist/macos/README.md. One-shot release:
dist/macos/release.shAdditional documentation and guides are available on the FlameRobin Wiki.
Developer-focused documentation can be found in the devdocs folder:
FlameRobin code is licensed under the MIT license. A copy of the license can be found in the LICENSE file
Part of code covering IBPP library is licensed under IBPP license. A copy of IBPP license can be found in src/ibpp folder.
FlameRobin uses a patched version of the fb-cpp library. These patches are necessary to support delayed transaction starts and transaction-less statement preparation, which are critical for FlameRobin's Data Access Layer (DAL).
The library is built using a custom vcpkg port located in ports/fb-cpp/. The patches are applied automatically during the vcpkg build process from ports/fb-cpp/fb-cpp-flamerobin.patch. This ensures that the upstream submodule in src/fb-cpp/ remains clean.
If you need to update the patches (e.g., after updating the submodule):
- Use the synchronization script to generate a new patch:
./utils/sync-fbcpp.sh
- The script will now automatically update
ports/fb-cpp/fb-cpp-flamerobin.patch. - Verify that the project still compiles and then commit the changes.