Visualise and navigate property graphs through a sleek, ultra-lightweight interface.
Works in any modern browser, with native Electron desktops for Windows, macOS, and Linux.
🔗 Live Demo · 📦 Latest Release
Download the latest release for your platform:
| Platform | Recommended download | Notes |
|---|---|---|
| Web | graph-lens-lite_inline_X.Y.Z.html |
Just open in a browser — no install needed |
| Windows | Graph.Lens.Lite.X.Y.Z.exe |
Portable — run directly, nothing to install |
| macOS | Graph.Lens.Lite-X.Y.Z-<arch>.dmg |
Disk image |
| Linux | Graph.Lens.Lite-X.Y.Z.AppImage |
Portable — chmod +x and run |
Other formats are also available: Windows installer (
.Setup.X.Y.Z.exe),.deb,.snap,.zip.
Then:
- (Optional) Download a template and add your data
- Launch Graph Lens Lite and load a demo or your file
npm install # install dependencies
npm run bundle:serve # dev server with watch + sourcemaps
npm run serve # static http-server on :8000
npm start # electron app
npm run dist-linux # Linux build
npm run dist-windows # Windows build
npm run serve:api # standalone ingest service (HTTP API + live viewer)See CONTRIBUTING.md for the full list of npm scripts, version management, code style, and commit guidelines.
Run Graph Lens Lite as a small standalone service so other apps can push graphs to it over HTTP and watch them render live in the browser:
cp .env.example .env # set GLL_API_TOKEN
npm run serve:api # serves the viewer + ingest API (default :7637)curl -X POST http://127.0.0.1:7637/api/graph \
-H "Authorization: Bearer $GLL_API_TOKEN" -H "Content-Type: application/json" \
-d '{"nodes":[{"id":"A"},{"id":"B"}],"edges":[{"source":"A","target":"B"}]}'Open http://127.0.0.1:7637/ and the pushed graph appears; further pushes update it live.
- SERVICE.md — running, configuring, and deploying the ingest service.
- API.md — payload reference for other apps: how to build JSON for meaningful graphs (styling, filterable data, bubble groups, layouts).
Contributions are welcome! Please read CONTRIBUTING.md before filing issues or submitting pull requests.
MIT — see LICENSE for details.
- Deselection by clicking on empty spaces in the canvas takes a long time on large graphs (see GitHub issue)
- The Query Editor cursor tends to change position on multiline queries
- Uses the STRING database for demo purposes (citation)
- No guarantees on the accuracy of the results
- This project includes third-party software — see THIRD_PARTY_NOTICES for details









