# Gramps Web is not an addon... so what is it?

**URL:** <https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730>\
**Category:** Development\
**Created:** [January 22, 2024, 9:54pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730 "2024-01-22T21:54:24Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [January 22, 2024, 9:54pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/1 "2024-01-22T21:54:24Z")

</div>

Gramps Web is currently filed on the `Gramps-Project.org` Wiki in an “[Addon](https://gramps-project.org/wiki/index.php/Category:Addons)” category but that is not accurate.

By convention, we have every addon’s wiki page title with an “Addon:” prefix. What other Naming Convention can we use to prefix such independent projects that use either the Gramps Engine or Gramps format data

The [Gramps Web Sync](https://gramps-project.org/wiki/index.php/Addon:Gramps_Web_Sync) is an addon tool available in the main project Addon repository and also in [David’s Repository](https://github.com/DavidMStraub/gramps-addon-webapisync). But Gramps Web is something else. (Just like [Betty](https://pypi.org/project/betty/) and [PhpGedView](https://wikipedia.org/wiki/PhpGedView).)

The Gramps Web [README.md](https://github.com/gramps-project/gramps-web/blob/main/README.md) describes it as interoperable with Gramps.

- interoperable
- compatible
- Cross-compatible
- Cross-platform
- external
- Interconnective

---

<div class="post-metadata">

**Author:** ![DaveSch](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davesch/32/40_2.png) [@DaveSch](https://gramps.discourse.group/u/DaveSch)\
**Post date:** [January 23, 2024, 12:44am UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/2 "2024-01-23T00:44:28Z")

</div>

I would say it is an install on par with the Windows’ AIO or Mac’s `dmg` installs It is installing Gramps in an environment.

The major difference with it and the AIO or Mac installers, it is not created from within the Gramps-project.

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [January 23, 2024, 1:29am UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/3 "2024-01-23T01:29:15Z")

</div>

Deciding whether a listing belongs in the Downloads can wait a bit. Right now, let’s discuss how to name wikipages for such software.

Gramps Web is young enough that there will probably be a good bit of evolution as the Installer matures.

---

<div class="post-metadata">

**Author:** ![Nick-Hall](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/nick-hall/32/95_2.png) [@Nick-Hall](https://gramps.discourse.group/u/Nick-Hall)\
**Post date:** [January 23, 2024, 5:12pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/4 "2024-01-23T17:12:14Z")

</div>

> [@emyoulation](#):
>
> By convention, we have every addon’s wiki page title with an “Addon:” prefix. What other Naming Convention can we use to prefix such independent projects that use either the Gramps Engine or Gramps format data

Gramps Web is not an independent project.

It consists of two components: a RESTful API that provides access to Gramps family trees and a web front-end. From a user perspective, it’s probably just another front-end much like the GUI and [command line](https://gramps-project.org/wiki/index.php/Gramps_5.2_Wiki_Manual_-_Command_Line) interface.

I also note that the [wiki page](https://gramps-project.org/wiki/index.php/Addon:Gramps_Web) describes Gramps Web as “a separate project based on the same code base as Gramps Desktop.” This is not particularly helpful. I can see where the confusion may arise though. Gramps Web has a separate web site for it’s documentation, uses a different bug reporting system, and communications such as release announcements are not made on the mailing lists or blog.

Perhaps we need to think about how we can better integrate Gramps Web into our ecosystem? @bmatherly Do you have any views on this?

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [January 23, 2024, 9:16pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/5 "2024-01-23T21:16:24Z")

</div>

> [@Nick-Hall](#):
>
> From a user perspective, it’s probably just another front-end much like the GUI and [command line](https://gramps-project.org/wiki/index.php/Gramps_5.2_Wiki_Manual_-_Command_Line) interface.

Yes, I think that’s a good way to put it.

> [@Nick-Hall](#):
>
> It consists of two components: a RESTful API that provides access to Gramps family trees and a web front-end.

… and for those note so familiar with it, technically it has three components, the third component being the Gramps Python library itself. I think that’s what’s meant in the Wiki by “same code base”, but I agree this Wiki article could use some rewriting.

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [January 23, 2024, 9:25pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/6 "2024-01-23T21:25:53Z")

</div>

> [@DavidMStraub](#):
>
> the third component being the Gramps Python library itself. I think that’s what’s meant in the Wiki by “same code base”, but I agree this Wiki article could use some rewriting.

Does “Gramps engine” resonate as a coined phrase for the Gramps Python library?

---

<div class="post-metadata">

**Author:** ![SNoiraud](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/snoiraud/32/72_2.png) [@SNoiraud](https://gramps.discourse.group/u/SNoiraud)\
**Post date:** [January 24, 2024, 8:58am UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/7 "2024-01-24T08:58:01Z")

</div>

> [@Nick-Hall](#):
>
> From a user perspective, it’s probably just another front-end much like the GUI and [command line](https://gramps-project.org/wiki/index.php/Gramps_5.2_Wiki_Manual_-_Command_Line) interface.

OK, but it should be docker independant.  
We must be able to install it on nginx, apache, IIS… with a good documentation.

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [January 24, 2024, 12:22pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/8 "2024-01-24T12:22:08Z")

</div>

> [@Nick-Hall](#):
>
> Perhaps we need to think about how we can better integrate Gramps Web into our ecosystem? @bmatherly Do you have any views on this?

Are changes for 5.3 needed to the [Plug-in Registration (on Sphinx)](https://gramps-project.org/docs/gen/gen_plug.html?highlight=registration#module-gramps.gen.plug._pluginreg) for Gramps-Web?

The reports have:  
`report_modes`  
`The report modes: list of REPORT_MODE_GUI ,REPORT_MODE_BKI,REPORT_MODE_CLI`

Does there need to be a Gramps Plugin Registration option for Gramps Web so that it will be able to use the [Addon Manager](https://gramps-project.org/wiki/index.php/Gramps_5.2_Wiki_Manual_-_Navigation#Using_the_Addon_Manager)? And does it need to be recognized as the current GUI by the [cli module](https://gramps-project.org/docs/corecli/cli.html?highlight=cli#module-gramps.cli)?

@DavidMStraub Can Gramps Web currently use CLI commands for Reports with `REPORT_MODE_CLI` compatibility?

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [January 24, 2024, 3:40pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/9 "2024-01-24T15:40:07Z")

</div>

I would answer “no” to all of these questions. I don’t think it makes sense treating Gramps Web (or even Gramps Web API) as a plug-in in the current framework. I also don’t see the benefit.

When it comes to better integrating Gramps Web [API] into the Gramps ecosystem, what I would rather be thinking about is moving some of the code from the `gramps_webapi` Python module into the `gramps` library. But that would only make sense if the Gramps library had a (much) shorter release cycle and stricter Python version requirements. And I understand why this is problematic from a Gramps [desktop] point of view.

From a user perspective, I think what matters is integration with addons, and there I think the situation is not so bad:

- Gramps Web Sync addon
- Shared PostgreSQL database addon
- S3 Media Uploader addon

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [January 24, 2024, 3:43pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/10 "2024-01-24T15:43:35Z")

</div>

I wasn’t suggesting making Gramps Web into a plug‐in. I was talking about making plug‐ins have a way to register that they are also compatible with Gramps Web… or ONLY compatible with Gramps Web!

If the idea is to give Gramps Web parity with the Gtk GUI or the CLI frontends, then it probably needs a way to identify plug-in (both for the built-in and add-on) compatibility in the same system.

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [January 24, 2024, 3:59pm UTC](https://gramps.discourse.group/t/gramps-web-is-not-an-addon-so-what-is-it/4730/11 "2024-01-24T15:59:12Z")

</div>

It might be reasonable to consider that someone might want to extend into an alternate GUI frontend… like Qt … for a mobile device frontend.

Or, down the line, some interface toolkit for a VR frontend.
