[ANN] Firebird Web Client — open-source, browser-based IDE for Firebird databases

39 views
Skip to first unread message

Obrt ASCENT vl. Zlatan Omerović

unread,
Apr 15, 2026, 7:38:23 AMApr 15
to firebird-general
Hello everyone,

I'd like to announce the first public release of Firebird Web Client — a free, open-source, web-based database management tool built specifically for Firebird.

There has never been a modern, browser-based IDE purpose-built for Firebird. The existing options are either desktop-only (FlameRobin, IBExpert), generic multi-database tools with limited Firebird support (DBeaver, Beekeeper Studio), or legacy PHP-based admin panels (FirebirdWebAdmin). This project aims to fill that gap.

The tool was built from scratch with Firebird's specific features and quirks in mind — including generators/sequences, domains, BOOLEAN type (Firebird 3+), ARRAY columns, databases.conf alias discovery, and proper handling of node-firebird wire protocol limitations.

What it does:
- Browse and manage all database objects: tables, views, stored procedures, triggers, generators, domains
- Inline cell editing with type-aware inputs (including BOOLEAN checkboxes)
- SQL editor with Firebird-specific syntax highlighting (250+ keywords, functions, and types)
- Server-side filtering with 11 comparison operators and wildcard global search
- Export to CSV, JSON, SQL (with optional DDL), XML, and XLSX
- Multi-database support — connect without specifying a database, discover available databases from databases.conf and filesystem, switch between databases without reconnecting
- Full DDL inspection for all object types
- Schema editing — add, alter, drop columns
- Query history with search and re-run
- Pagination with configurable page size and infinite scroll option
- Dark and light themes with 10 accent color options
- Docker Compose deployment ready
- CI/CD pipeline with automatic Docker Hub publishing

Technical stack:
- Backend: Node.js, Fastify 5, TypeScript, node-firebird (wire protocol)
- Frontend: React 19, TypeScript (strict mode), Tailwind CSS v4, TanStack Table/Query, CodeMirror 6
- Database driver: node-firebird 1.1.8
- Tested with: Firebird 3.0, 4.0, 5.0 (including Docker containers)

Known Firebird-specific considerations:
- MON$ monitoring tables are not queried (crashes the node-firebird wire protocol)
- BLOB fields are handled via CAST to VARCHAR where possible
- BOOLEAN parameters are inlined as TRUE/FALSE literals rather than parameterized (node-firebird converts boolean params to string "0"/"1" which Firebird rejects)
- ARRAY columns are detected via RDB$FIELD_DIMENSIONS and expanded into individual element columns
- Query serialization per session prevents concurrent access deadlocks in node-firebird

Links:
GitHub: https://github.com/ZlatanOmerovic/firebird-web-client
Demo video: https://youtu.be/uGv_Qdw2vvY
Docker Hub: https://hub.docker.com/r/zlomerovic/firebird-web-client
License: MIT

This is version 0.0.1-beta — emphasis on beta. The groundwork and heavy lifting are done, but it still needs a lot of testing across different Firebird versions, edge cases, and real-world usage scenarios. I haven't had the time to test every possible aspect — backwards compatibility with older Firebird versions (2.5, 3.0) in particular needs more attention, and there are certainly rough edges to smooth out.

That said, the foundation is solid and the core features are functional. I'm releasing it early to get feedback from the people who know Firebird best.

Contributions, bug reports, and testing on different setups are very welcome. If you run into issues or have suggestions, please open an issue on GitHub.

Regards,
Zlatan Omerovic
Ascent Systemes

Yaroslav Witol

unread,
Apr 17, 2026, 4:10:28 AMApr 17
to firebird...@googlegroups.com
Hello.
Thanks for your work.
Is there a comparison of database structures with script generation to bring them into line?
This feature is available in IBExpert and it is the one I use the most when making changes between the test and production databases.

ср, 15 квіт. 2026 р. о 14:38 Obrt ASCENT vl. Zlatan Omerović <asce...@gmail.com> пише:
--
Support the ongoing development of Firebird! Consider donating to the Firebird Foundation and help ensure its future. Every contribution makes a difference. Learn more and donate here:
https://www.firebirdsql.org/donate
---
You received this message because you are subscribed to the Google Groups "firebird-general" group.
To unsubscribe from this group and stop receiving emails from it, send an email to firebird-gener...@googlegroups.com.
To view this discussion, visit https://groups.google.com/d/msgid/firebird-general/e1eb7794-5679-4996-85c2-43e67108ae62n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages