Combining Gramps-Connect and GrampsWeb

Hi,

thanks for your feedback, tagging @dsblank and myself @DavidMStraub, the maintainers :smiley:

I’ve been asked repeatedly about my view on this topic, so let me share a couple of thoughts. For those that don’t know, I’m the maintainer of “Gramps Web API” (since 2020) and “Gramps Web” (since 2021).

My first experiments with a Gramps REST API started in 2019 (repo) and were reimplemented as an official Gramps project in 2020 after this Discourse thread. Although I already had a frontend back then, Gramps Web API was as a standalone REST API. So, already back then, the idea was to be able to turn this into a general backend for an ecosystem of apps.

So I think it’s great that new projects like Gramps Connect can be used with one and the same Gramps Web API deployment as the “official” Gramps Web frontend. Requirements of different apps plus the separation of concerns between Gramps Web API code and Gramps core code (which additionally evolve at different speeds) mean it’s not always trivial to find a good solution, but I definitely see it as a top priority to allow Gramps Web API to continue to play this role.

In case you follow the development progress of Gramps Web API, you’ll have already seen the impact of Gramps Web API being used by more projects: apart from @dsblank’s own contributions and contributions by community members developing or using MCP servers for AI agents, @dsblank’s push towards performance have also motivated me to improve on some long standing bottlenecks affecting Gramps Web (see e.g. 3.22.1).

Concerning frontends: as said, I think it’s great that our architecture allows creating customized user interfaces and being able to use them alongside each other, because it gives users the choice – that’s what open source is about. If there is interest, I could also deploy Gramps-Connect on Grampshub as an alternative frontend.

Then again – I am so busy with the two projects I maintain that I don’t really have the time to look at all the other cool projects out there and try to find out which part we can use to improve Gramps Web. So, if you’re using other projects like Gramps-Connect, GreatGramps, etc., and find something that you’ve been missing in Gramps Web: please do open a discussion or feature request in the Gramps Web repo as described in the contribution guide. A short description of the idea and what it would be useful for is very valuable to plan future improvements in Gramps Web.

David