Repository navigation
FAQ.nl
🌐 English · Deutsch · Español · Français · 简体中文
gramps-connect-desktop is de zelfstandige versie (zie Installeren).
Eén bestand bundelt de frontend van app/ en de backend
van gramps-web-api samen met SQLite, draait volledig op uw eigen
computer en luistert alleen op 127.0.0.1 — niets ervan is via een
netwerk bereikbaar, en er is altijd precies één hardgecodeerde gebruiker
(admin/admin). Het is bedoeld om Gramps Connect op uw eigen computer
uit te proberen, niet om een stamboom met iemand anders te delen.
deploy/ is de echte vorm voor meerdere gebruikers: een
gecontaineriseerde app/ + gramps-web-api met een echte Postgres als
basis, met Caddy ervoor voor TLS, bedoeld om echt ergens te worden
gehost — echte geheimen, een echt domein/certificaat en meerdere
gebruikers, elk met een eigen login. Het is ook de enige manier om live
samenwerken in actie te zien — de zelfstandige versie is bewust voor één
gebruiker, dus er zijn geen bewerkingen van anderen om te zien
verschijnen.
Dichter bij elkaar dan "serverinstallatie" hierboven zou doen vermoeden —
beide zijn apps voor één gebruiker, alleen lokaal, gebouwd op dezelfde
onderliggende Gramps-database. Vandaag ligt Desktop qua functionaliteit
ver voor: tientallen jaren aan eigen hulpmiddelen, gramplets en rapporten
die de REST-laag van gramps-web-api (nog) niet dekt, dus het is geen
directe vervanging. Maar een snellere, browsergebaseerde interface op
dezelfde gegevens is een serieuze kandidaat om Desktop op termijn te
evenaren voor dagelijks gebruik.
Nee. Het luistert alleen op 127.0.0.1, telemetrie is uitgeschakeld en
alles wat het opslaat staat in ~/.gramps-connect-desktop op uw eigen
computer. De enige uitzondering waarvoor u zelf moet kiezen is uitgaande
e-mail (wachtwoord opnieuw instellen enz.) — zie
Installeren#configuratie — die uit staat
tenzij u die bewust instelt.
Ja — Stambomen → Importeren... accepteert een Gramps XML-bestand
(.gramps) of een GEDCOM-bestand (.ged), net als de echte installatie.
De voorbeeldstap toont wat het bestand bevat en, als de importeur ergens
moeite mee had (meestal GEDCOM-regels die hij niet begrijpt), dat
rapport — met de regelnummers in het bestand en een knop Kopiëren —
voordat u de import definitief uitvoert. Als de echte import ook
problemen meldt, toont het dialoogvenster die voordat het opnieuw laadt
in plaats van meteen opnieuw te laden. (Het rapport vereist een
gramps-web-api-server vanaf v3.23.0; oudere servers slaan het gewoon
over.) Beschouw het alleen niet als uw enige kopie — maak hoe dan ook een
back-up, zoals u dat bij elk hulpmiddel dat nog actief wordt ontwikkeld
zou moeten doen.
Nee — ~/.gramps-connect-desktop staat los van het programmabestand van
de app, dus een nieuwere versie installeren hergebruikt wat er al staat.
Verwijder die map zelf als u met een schone lei wilt beginnen.
Ja, bij de serverinstallatie. De backend in Implementeren is
een gewone, ongewijzigde gramps-web-api-instantie, dus
gramps-project/gramps-web kan er ook naar verwijzen — dezelfde
gegevens, dezelfde stambomen/gebruikers, alleen een andere interface op
een andere poort. Zie
Implementeren#gramps-web-naast-gramps-connect-draaien
voor hoe u dat opzet.
Gramps XML (.gramps) en GEDCOM (.ged) — dezelfde formaten die Gramps
Desktop en gramps-web gebruiken, zodat een stamboom vrij tussen alle drie
kan worden verplaatst.
Ja — elk tabblad is een onafhankelijke client van dezelfde
gramps-web-api-backend (zie Architectuur); tabbladen
praten nooit met elkaar en slaan uw stamboomgegevens ook niet zelf op.
In verschillende tabbladen aan verschillende personen, plaatsen of
gebeurtenissen werken is volkomen veilig en geeft een verwaarloosbare
belasting — de enige achtergrondactiviteit van elk tabblad is de kleine
poll van de live synchronisatie om de paar seconden (zie
Architectuur#live-sync).
Twee dingen maken dit echt veilig in plaats van alleen "meestal goed":
-
Opslag is zo afgebakend dat tabbladen elkaar niet kunnen hinderen.
Uw login staat in
sessionStorageper tabblad, dus elk tabblad begint zijn eigen sessie (zie Onder de motorkap). Het enige wat tabbladen wel delen zijn kleine UI-voorkeuren inlocalStorage(kolombreedtes, laatst uitgeklapt knooppunt in de boom, ...) — nooit genealogische gegevens. -
Het enige echte risico — hetzelfde record in twee tabbladen bewerken —
wordt opgevangen voordat het schade kan doen. Een
Persoon/Gebeurtenis/Plaats/enz. opslaan schrijft het volledige object;
voordat dat gebeurt, haalt de app dat record opnieuw op en vergelijkt
het met wat er stond toen u het opende om te bewerken (
saveAll()inapp/src/store/draftStack.ts). Als het intussen elders is gewijzigd — in een ander tabblad, of door een andere gebruiker op een gedeelde server — wordt het opslaan geblokkeerd met een foutmelding die u vraagt het opnieuw te openen, in plaats van ongemerkt te overschrijven wat iemand anders als eerste heeft opgeslagen.
Ja. Ook al slaat gramps-connect-desktop uw stamboom op in één
SQLite-bestand, elk browsertabblad praat met dezelfde ene lokale kopie
van gramps-web-api, en die server is bewust zo geconfigureerd dat hij
één verzoek tegelijk afhandelt (threaded=False in
standalone/launcher.py) in plaats van meerdere tegelijk. Dat is geen
toevallige bottleneck — het is er omdat de SQLite-backend van Gramps de
database permanent kan vergrendelen als twee verzoeken gelijktijdig
close() aanroepen (live bevestigd: een echte import van ~10k objecten,
direct gevolgd door het herladen van de pagina, reproduceerde het, en de
stamboom herstelde nooit zonder het proces te beëindigen). Door elk
verzoek via één thread te laten lopen, wordt die race volledig vermeden,
zodat het bestand nooit door twee verzoeken tegelijk wordt aangeraakt,
hoeveel tabbladen u ook open hebt.
De discussie vindt plaats op het Gramps Discourse-forum; issues en pull requests voor de gramps-connect-repository zijn welkom. Zie Ontwikkeling.
Gramps Connect is part of the family of Gramps-based software.
Using the app
- Overview
- Installing
- Deploying
- Messaging
- GOQL (advanced search)
- Gramplets & Add-on Store
- Data Model & Editing
- FAQ
Building & contributing