LMDB viewer re-implemented in Python with Flet.
The app opens an LMDB directory, reads the default database, lists key/value pairs, supports refresh, and filters rows by key or value.
- Open an LMDB directory from a native folder picker
- Browse key/value pairs in a two-column table
- Search by key or value
- Refresh rows from disk without reopening the app
- Safe text decoding for non-UTF-8 LMDB content using replacement characters
- Python 3.11+
- An LMDB environment directory to inspect
poetry installPoetry manages the project environment, so you do not need to create a separate .venv manually.
poetry run python app.pyFlet can package the app as a desktop binary. On Linux, build on Linux; on Windows, build on Windows; on macOS, build on macOS.
Basic Linux desktop build:
poetry install
poetry run flet build linuxLinux desktop prerequisites reported by flutter doctor:
sudo apt-get update
sudo apt-get install -y clang cmake ninja-build libgtk-3-dev mesa-utilsOr use the helper script in this repository:
bash scripts/install_linux_build_deps.shBuild artifacts are written under build/<target>. This repository includes a Poetry-managed pyproject.toml with Flet metadata, the Python entry module, and the app icon under assets/icon.png.
Notes:
- The first
flet buildmay download Flutter automatically. - Desktop packaging can require platform-native build dependencies.
- Packaged builds exclude
.git, optional in-project virtualenvs, and sample data. - A GitHub Actions workflow is included at
.github/workflows/build-linux.ymlto produce a Linux artifact in CI.
app.py: entry pointlmdb_viewer/database.py: LMDB access and filteringlmdb_viewer/app.py: Flet user interfacepyproject.toml: Poetry and Flet project metadataassets/icon.png: icon used for packaged buildsscripts/install_linux_build_deps.sh: installs Linux desktop build prerequisites
- The current implementation targets the default LMDB database, matching the original app behavior.