Gramps is a desktop genealogy program for building and researching family trees, built with Python and GTK.
gramps-project/gramps-web-api
A Python REST API that lets you query and edit Gramps genealogy family tree databases over the web.
Open-source alternative to:Ancestry
- Stars
- 231
- Forks
- 173
- Open issues
- 33
- Last commit
- 2 days ago
What is it?
Gramps Web API exposes a Gramps family tree database through a RESTful HTTP interface, so that people, families, events, places and other genealogical records can be queried and modified from a browser or other client. It is built with Flask and serves as the backend of Gramps Web, a genealogy web application based on Gramps.
The API is documented online and is intended to be usable independently of the official frontend, so other tools can connect to a Gramps database through it. A developer guide covers backend setup and development.
The project is maintained by the Gramps project and is licensed under AGPL-3.0. A separate frontend repository provides the web user interface.
Key features
- 01Exposes Gramps family tree data through a RESTful HTTP API.
- 02Supports querying and manipulating genealogical records over the web.
- 03Built with Flask in Python.
- 04Serves as the backend for the Gramps Web application.
- 05Has online API documentation and developer documentation.
Use cases
- Hosting a family tree database that multiple users access through a web app.
- Building a custom genealogy frontend or integration on top of Gramps data.
- Automating reads or updates to a Gramps database through HTTP calls.
Quick start
- 1
Read the API documentation
- 2
Open the developer documentation for backend setup
Things to know
- The README gives no install command, so setup requires following external documentation.
- Licensed under AGPL-3.0, a copyleft license that requires sharing modified source code when served over a network.
Topics
FAQ
- What is gramps-web-api?
- A Python REST API that lets you query and edit Gramps genealogy family tree databases over the web. Gramps Web API exposes a Gramps family tree database through a RESTful HTTP interface, so that people, families, events, places and other genealogical records can be queried and modified from a browser or other client. It is built with Flask and serves as the backend of Gramps Web, a genealogy web application based on Gramps.
- Is gramps-web-api free to use? What license does it have?
- gramps-web-api is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
- Is gramps-web-api still maintained?
- Actively maintained. The last commit to gramps-web-api was on Nov 5, 2026.
- What can I use gramps-web-api for?
- Hosting a family tree database that multiple users access through a web app. Building a custom genealogy frontend or integration on top of Gramps data. Automating reads or updates to a Gramps database through HTTP calls.
- How do I install gramps-web-api?
- Read the API documentation Open the developer documentation for backend setup
- Where can I get gramps-web-api?
- The source code and installation instructions are on GitHub: https://github.com/gramps-project/gramps-web-api
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted web application for recording, viewing and sharing family trees, with GEDCOM import and export.
Open-source genealogy software written in OCaml that runs a family-tree database with a web interface, locally or as a server.
A self-hosted family tree web app built on Laravel for recording family members, their relationships, and GEDCOM import/export.
An evidence-first genealogy skill for AI agents that researches family history across former USSR records, with traceable sources.
An opinionated Java framework for building production-grade, Spring-powered applications and services with minimal setup.