Popa Marius Adrian · mariuz

Software developer from Romania and long-time Firebird RDBMS contributor. I maintain open-source tooling around Firebird and lately push it into new places: the browser (WebAssembly), Kubernetes, vector search, Rust and LLM assistants over MCP.

Latest announcements

From the mapopa blog.

All posts →

Play in the browser

Classic games simulated inside a real Firebird 6 database compiled to WebAssembly, plus Castle Game Engine ports.

firebird-doom

DOOM simulated and rendered inside Firebird SQL, running in the browser via Firebird WASM.

▶ PlaySQL / WASM

firebird-quake

Quake simulated and rendered inside the Firebird database.

▶ PlaySQL / WASM

firebird-quake2

Quake 2 simulated and rendered inside the Firebird database.

▶ PlaySQL / WASM

firebird-quake3

Quake III Arena simulated and rendered inside the Firebird database.

▶ PlaySQL / WASM

castle-doom

Doom levels rendered and played with Castle Game Engine, with a WebAssembly build.

▶ PlayObject Pascal

castle-quake1

Quake 1 port using Castle Game Engine.

▶ PlayObject Pascal

castle-quake2

Quake 2 port using Castle Game Engine.

▶ PlayObject Pascal

FBSimCity

An explorable isometric city showing how Firebird works: Y-valve, DSQL, MVCC, sweep, page cache, replication.

▶ ExploreEducation

Projects

Selected work. Everything else is on GitHub.

Firebird in new places

electric-firebird

The real Firebird engine compiled to WASM, running in the browser with no server. PGlite-style async API.

Live demoTypeScript / WASM

fbvector

Vector storage and similarity search as a Firebird UDR, SIMD-accelerated. Think pgvector, for Firebird.

C++

fire-crab

Incremental C++ to Rust conversion of the Firebird engine, differential-tested against the real engine.

Rust

cloudnative-firebird

Kubernetes operator for Firebird with a FirebirdCluster CRD, inspired by cloudnative-pg.

TypeScript

FirebirdREST

Serve a RESTful API from any Firebird database.

DocsREST

firebirdrest-js

The supabase-js query API (from, select, filters, rpc, upserts) for FirebirdREST.

JavaScript

Tools

FlameRobin

Lightweight, cross-platform admin and development GUI for Firebird, now with a vector data editor and a built-in MCP server.

flamerobin.orgC++ / wxWidgets

fbadmin

A pgAdmin-style web admin and development tool for Firebird: object explorer, DDL, query tool, editable grid.

FBExport / FBCopy

Import/export data and run SQL scripts; copy and compare data across Firebird databases.

C++

gmarathon-freepascal

The Marathon SQL IDE for Firebird, ported from Delphi to Lazarus/FreePascal.

FreePascal

FirebirdWebAdmin

Administer a Firebird server from the browser.

PHP

perl-dbd-firebird

DBD::Firebird, the Perl DBI driver for Firebird.

Perl / XS

Games and engines

unreal-doom

DOOM and DOOM II ported to Unreal Engine 5.8 in C++: WAD loading, Lumen renderer, Niagara, co-op and deathmatch.

C++ / UE5

castle-doom3

Doom 3 (id Tech 4) levels, materials, md5 models and sounds played with Castle Game Engine.

Object Pascal

unreal-mcp-cpp

An MCP server for Unreal Engine with a C++ core.

C++

Learning and history

Conceptual architecture for Firebird

The conceptual-architecture paper on Firebird's major components, updated and re-diagrammed.

Paper

linux-0.01

A compilable version of the very first Linux kernel release.

C

Articles on this site