Ricerca genealogica
Crea con AI Agent
Backend di Ricerca Genealogica

Modello Backend per App di Ricerca Genealogica __PH0__
tracciamento di FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote

Un backend di ricerca genealogica pronto per la produzione su Back4app per registri FamilyTree, parenti di FamilyNode, fonti DocumentScan, recensioni di DnaMatchLog e risultati di ResearchNote. Include diagramma ER, guida al campo, schema JSON, sandbox API e un prompt AI Agent per un rapido bootstrap.

Principali insegnamenti dalla ricerca genealogica

Questo modello ti offre un backend di ricerca genealogica con FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote affinché il tuo team possa organizzare le prove di linea e i percorsi delle fonti.

  1. Dashboard di FamilyTreeModella ogni FamilyTree con treeName, originRegion, status e owner affinché ogni spazio di lavoro genealogico rimanga tracciabile.
  2. Tracciamento di linea FamilyNodeRegistra ogni FamilyNode con fullName, relationship, birthDate, deathDate, sourceStatus e createdBy per una chiara revisione.
  3. Catalogo delle fonti DocumentScanMemorizza ogni DocumentScan con title, fileUrl, documentType, recordDate e uploadedBy per prove supportate da fonti.
  4. Flusso di revisione DnaMatchLogTraccia ogni DnaMatchLog con kitId, matchName, sharedCm, matchStatus e reviewedBy per il follow-up del DNA.
  5. Note di ricerca evidenzeCollega ogni ResearchNote a un FamilyTree e a un optional relatedNode in modo che i risultati rimangano attaccati al ramo giusto.

Panoramica: App di Ricerca Genealogica

Un pipeline di ricerca genealogica sana ha fasi chiare, proprietari e criteri di uscita—altrimenti “in corso” diventa un buco nero. I clienti lo sentono nell'ETA che prometti. Back4app ancorano FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote per pratiche di ricerca genealogica che necessitano di scadenze, documenti e comunicazioni in un spazio di lavoro con permessi. Lo schema copre Utente (username, email, ruolo), FamilyTree (treeName, originRegion, status, owner), FamilyNode (fullName, relationship, birthDate, deathDate, sourceStatus, createdBy), DocumentScan (title, fileUrl, documentType, recordDate, uploadedBy), DnaMatchLog (kitId, matchName, sharedCm, matchStatus, reviewedBy) e ResearchNote (subject, body, relatedNode, author). Collega il tuo frontend preferito e inizia a catturare la storia familiare con una linea di discendenza strutturata e link alle fonti.

Migliore per:

Applicazioni di ricerca genealogicaStrumenti di documentazione dell'albero genealogicoSistemi di indicizzazione archivi e scansioniPortali di revisione dei match del DNAFlussi di lavoro per il coordinamento della ricercaTeam che selezionano BaaS per prodotti di lignaggio

Cosa ottieni nel modello di ricerca genealogica

Se i soggetti interessati nella ricerca genealogica non riescono a rispondere a domande semplici in pochi secondi, le risponderanno durante le riunioni — lentamente e costosamente.

L'hub mette in evidenza FamilyTree, FamilyNode e DocumentScan in modo da poter confrontare le stack client contro le stesse entità, campi e relazioni.

Set di funzionalità dell'app genealogica

Ogni scheda tecnologica in questo hub utilizza lo stesso schema genealogico con User, FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote.

Account utente e ruoli

L'utente memorizza nome utente, email, password e ruolo.

Registrazioni FamilyTree e FamilyNode

FamilyTree conserva treeName, originRegion, status e owner, mentre FamilyNode conserva fullName e relationship.

Registro delle sorgenti di DocumentScan

DocumentScan cattura titolo, fileUrl, tipo di documento e data di registrazione.

Revisioni DnaMatchLog

DnaMatchLog memorizza kitId, matchName, sharedCm e matchStatus.

Perché costruire il backend della tua ricerca genealogica con Back4app?

Back4app ti offre FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote, così il tuo team può concentrarsi sulla revisione delle prove invece che sulla gestione del database.

  • Struttura di FamilyTree e FamilyNode: Le classi FamilyTree e FamilyNode memorizzano treeName, originRegion, fullName, relationship e sourceStatus in un formato interrogabile.
  • DocumentScan e controllo delle fonti: I registri DocumentScan mantengono insieme title, fileUrl, documentType, recordDate e uploadedBy affinché ogni fonte rimanga collegata all'albero giusto.
  • Revisione del DNA e percorsi di note: I registri DnaMatchLog e ResearchNote conservano kitId, matchName, sharedCm, matchStatus, subject e relatedNode affinché i revisori possano seguire ogni confronto.

Costruisci e itera rapidamente sui flussi di lavoro genealogici con un contratto backend unico su tutte le piattaforme.

Vantaggi della ricerca genealogica

Un backend di ricerca genealogica che ti aiuta a mantenere le tracce delle sorgenti e i appunti di linea organizzati.

Impostazione della ricerca più veloce

Inizia da uno schema completo per User, FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote anziché definirlo da zero.

Registrazioni familiari collegate a fonti

Collega ogni FamilyNode a sourceStatus, birthDate, deathDate e createdBy per una chiara attribuzione.

Tracciabilità della scansione e delle note

Utilizza i campi di DocumentScan come title, fileUrl, documentType e recordDate, quindi collega le voci di ResearchNote al FamilyNode corretto.

Tracciabilità della revisione del DNA

Utilizza i campi di DnaMatchLog come kitId, matchName, sharedCm e matchStatus per documentare il lavoro di follow-up.

Accesso controllato a note di lignaggio sensibili

Utilizza ACL e CLP affinché solo gli utenti autorizzati possano modificare le voci di FamilyTree, FamilyNode, DocumentScan e ResearchNote.

Archiviazione delle prove cronologiche

Archivia createdAt, updatedAt, recordDate e reviewedBy tra classi senza appiattire il percorso di ricerca.

Pronto a lanciare la tua app di ricerca genealogica?

Lascia che l'agente AI di Back4app crei la struttura del tuo backend di ricerca genealogica e generi flussi di lavoro FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote da un solo prompt.

Gratis per iniziare — 50 prompt AI Agent/mese, nessuna carta di credito necessaria

Stack tecnologico

Tutto incluso in questo modello di backend per la ricerca genealogica.

Frontend
13+ tecnologie
Backend
Back4app
Database
MongoDB
Autenticazione
Autenticazione e sessioni integrati
API
REST e GraphQL
In tempo reale
Live Queries

Mappa ER della genealogia

Modello di relazione entità per lo schema di backend della ricerca genealogica.

Visualizza sorgente diagramma
Mermaid
erDiagram
    User ||--o{ FamilyTree : "owner"
    User ||--o{ FamilyNode : "createdBy"
    User ||--o{ DocumentScan : "uploadedBy"
    User ||--o{ DnaMatchLog : "reviewedBy"
    User ||--o{ ResearchNote : "author"
    FamilyTree ||--o{ FamilyNode : "tree"
    FamilyTree ||--o{ DocumentScan : "tree"
    FamilyTree ||--o{ DnaMatchLog : "tree"
    FamilyTree ||--o{ ResearchNote : "tree"
    FamilyNode ||--o{ ResearchNote : "relatedNode"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        Date createdAt
        Date updatedAt
    }

    FamilyTree {
        String objectId PK
        String treeName
        String originRegion
        String status
        String ownerId FK
        Date createdAt
        Date updatedAt
    }

    FamilyNode {
        String objectId PK
        String treeId FK
        String fullName
        String relationship
        Date birthDate
        Date deathDate
        String sourceStatus
        String createdById FK
        Date createdAt
        Date updatedAt
    }

    DocumentScan {
        String objectId PK
        String treeId FK
        String title
        String fileUrl
        String documentType
        Date recordDate
        String uploadedById FK
        Date createdAt
        Date updatedAt
    }

    DnaMatchLog {
        String objectId PK
        String treeId FK
        String kitId
        String matchName
        Number sharedCm
        String matchStatus
        String reviewedById FK
        Date createdAt
        Date updatedAt
    }

    ResearchNote {
        String objectId PK
        String treeId FK
        String subject
        String body
        String relatedNodeId FK
        String authorId FK
        Date createdAt
        Date updatedAt
    }

Flusso di integrazione genealogica

Flusso di runtime tipico per l'accesso, caricamento del dashboard di FamilyTree, creazione di FamilyNode, caricamento di DocumentScan, revisione di DnaMatchLog e sincronizzazione di ResearchNote.

Visualizza sorgente diagramma
Mermaid
sequenceDiagram
  participant User
  participant App as Genealogy Research App
  participant Back4app as Back4app Cloud

  User->>App: Sign in
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open family tree dashboard
  App->>Back4app: GET /classes/FamilyTree?include=owner&order=-updatedAt
  Back4app-->>App: Tree list and owner pointers

  User->>App: Add a FamilyNode to a tree
  App->>Back4app: POST /classes/FamilyNode
  Back4app-->>App: FamilyNode objectId

  User->>App: Upload a DocumentScan and review DNA matches
  App->>Back4app: POST /classes/DocumentScan
  App->>Back4app: GET /classes/DnaMatchLog?include=reviewedBy&order=-createdAt
  Back4app-->>App: Scan record and match log entries

  App->>Back4app: Live update family tree changes
  Back4app-->>App: Subscription event for FamilyNode and ResearchNote

Guida dei campi

Riferimento completo a livello di campo per ogni classe nello schema di ricerca genealogica.

CampoTipoDescrizioneRichiesto
objectIdStringAuto-generated unique identifierAuto
usernameStringStaff login name
emailStringStaff email address
passwordStringHashed password (write-only)
roleStringRole of the user (e.g., researcher, reviewer, admin)
createdAtDateAuto-generated creation timestampAuto
updatedAtDateAuto-generated last-update timestampAuto

7 campi in User

Permessi di ruolo e accesso

Come la strategia ACL e CLP protegge utenti, alberi genealogici, nodi familiari, scansioni, registri DNA e note di ricerca.

Protezione accesso staff

Utilizzare la classe Utente solo per il personale autenticato, con valori di ruolo come ricercatore, revisore e amministratore.

Integrità della fonte per i record degli alberi

Utilizzare la validazione Cloud Code in modo che le voci FamilyTree, FamilyNode e ResearchNote includano il treeName, fullName, sourceStatus o body attesi prima del salvataggio.

Visibilità della linea di scoping

Limita le letture in modo che i team di ricerca possano visualizzare solo i rami del FamilyTree, i file DocumentScan e le voci del DnaMatchLog a cui sono autorizzati a accedere.

Schema JSON

Definizione dello schema JSON grezzo pronta da copiare in Back4app o utilizzare come riferimento per l'implementazione.

JSON
{
  "classes": [
    {
      "className": "User",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "FamilyTree",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "treeName": {
          "type": "String",
          "required": true
        },
        "originRegion": {
          "type": "String",
          "required": false
        },
        "status": {
          "type": "String",
          "required": true
        },
        "owner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "FamilyNode",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "tree": {
          "type": "Pointer",
          "required": true,
          "targetClass": "FamilyTree"
        },
        "fullName": {
          "type": "String",
          "required": true
        },
        "relationship": {
          "type": "String",
          "required": true
        },
        "birthDate": {
          "type": "Date",
          "required": false
        },
        "deathDate": {
          "type": "Date",
          "required": false
        },
        "sourceStatus": {
          "type": "String",
          "required": true
        },
        "createdBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "DocumentScan",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "tree": {
          "type": "Pointer",
          "required": true,
          "targetClass": "FamilyTree"
        },
        "title": {
          "type": "String",
          "required": true
        },
        "fileUrl": {
          "type": "String",
          "required": true
        },
        "documentType": {
          "type": "String",
          "required": true
        },
        "recordDate": {
          "type": "Date",
          "required": false
        },
        "uploadedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "DnaMatchLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "tree": {
          "type": "Pointer",
          "required": true,
          "targetClass": "FamilyTree"
        },
        "kitId": {
          "type": "String",
          "required": true
        },
        "matchName": {
          "type": "String",
          "required": true
        },
        "sharedCm": {
          "type": "Number",
          "required": true
        },
        "matchStatus": {
          "type": "String",
          "required": true
        },
        "reviewedBy": {
          "type": "Pointer",
          "required": false,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ResearchNote",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "tree": {
          "type": "Pointer",
          "required": true,
          "targetClass": "FamilyTree"
        },
        "subject": {
          "type": "String",
          "required": true
        },
        "body": {
          "type": "String",
          "required": true
        },
        "relatedNode": {
          "type": "Pointer",
          "required": false,
          "targetClass": "FamilyNode"
        },
        "author": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

Costruisci con l'Agente AI

Utilizza l'Agente AI di Back4app per generare una vera app di ricerca genealogica da questo modello, inclusi frontend, backend, auth e flussi di FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote.

Agente AI Back4app
Pronto per costruire
Crea un backend per un'app di ricerca genealogica su Back4app con questo schema e comportamento esatti.

Schema:
1. Utente (usa il profilo di autenticazione integrato di Back4app): nome utente (Stringa, richiesto), email (Stringa, richiesto), password (Stringa, richiesto), ruolo (Stringa, richiesto); objectId, createdAt, updatedAt (sistema).
2. AlberoGenealogico: nomeAlbero (Stringa, richiesto), regioneDiOrigine (Stringa, opzionale), stato (Stringa, richiesto), proprietario (Puntatore a Utente, richiesto); objectId, createdAt, updatedAt (sistema).
3. NodoFamiliare: albero (Puntatore a AlberoGenealogico, richiesto), nomeCompleto (Stringa, richiesto), relazione (Stringa, richiesto), dataDiNascita (Data, opzionale), dataDiMorte (Data, opzionale), statoSorgente (Stringa, richiesto), creatoDa (Puntatore a Utente, richiesto); objectId, createdAt, updatedAt (sistema).
4. ScansioneDocumento: albero (Puntatore a AlberoGenealogico, richiesto), titolo (Stringa, richiesto), urlFile (Stringa, richiesto), tipoDocumento (Stringa, richiesto), dataRegistrazione (Data, opzionale), caricatoDa (Puntatore a Utente, richiesto); objectId, createdAt, updatedAt (sistema).
5. RegistroCorrispondenzaDna: albero (Puntatore a AlberoGenealogico, richiesto), kitId (Stringa, richiesto), nomeCorrispondenza (Stringa, richiesto), cmCondivisi (Numero, richiesto), statoCorrispondenza (Stringa, richiesto), esaminatoDa (Puntatore a Utente, opzionale); objectId, createdAt, updatedAt (sistema).
6. NotaDiRicerca: albero (Puntatore a AlberoGenealogico, richiesto), soggetto (Stringa, richiesto), testo (Stringa, richiesto), nodoCorrelato (Puntatore a NodoFamiliare, opzionale), autore (Puntatore a Utente, richiesto); objectId, createdAt, updatedAt (sistema).

Sicurezza:
- Solo utenti autenticati possono creare nodi dell'albero, scansioni, note e registri DNA.
- I proprietari degli alberi e i revisori possono aggiornare il contenuto dell'albero; limita le scansioni dei documenti al loro caricatore o a un ruolo di amministratore.
- Proteggi le informazioni personali e le note sulla storia familiare con ACL basate su ruoli e permessi di classe.

Autenticazione:
- Registrazione, accesso, disconnessione.

Comportamento:
- Gestisci alberi genealogici, aggiungi nodi di persone, allega scansioni di documenti, esamina corrispondenze DNA e scrivi note di ricerca.

Consegna:
- App Back4app con schema, ACL, CLP; frontend per alberi genealogici, scansioni di documenti, registri di corrispondenza DNA e revisione delle note.

Premi il pulsante sottostante per aprire l'Agente con questo prompt del modello già compilato.

Questo è il prompt base senza un suffisso tecnologico. Puoi adattare il stack frontend generato successivamente.

Distribuisci in pochi minuti50 prompt gratuiti / meseNessuna carta di credito richiesta

API Sandbox

Prova le REST e gli endpoint GraphQL contro lo schema di ricerca genealogica. Le risposte utilizzano dati fittizi e non richiedono un account Back4app.

Caricamento playground…

Utilizza lo stesso schema di questo modello.

Scegli la tua tecnologia

Espandi ogni scheda per vedere come integrare FamilyTree, FamilyNode e DocumentScan con il tuo stack scelto.

Backend di ricerca genealogica Flutter

Backend di ricerca genealogica React

Backend di ricerca genealogica React Nativo

Backend di ricerca genealogica Next.js

Backend di ricerca genealogica JavaScript

Backend di ricerca genealogica Android

Backend di ricerca genealogica iOS

Backend di ricerca genealogica Vue

Backend di ricerca genealogica Angular

Backend di ricerca genealogica GraphQL

Backend di ricerca genealogica REST API

Backend di ricerca genealogica PHP

Backend di ricerca genealogica .NET

Cosa ottieni con ogni tecnologia

Ogni stack utilizza lo stesso schema di backend di ricerca genealogica e contratti API.

Struttura dati genealogici unificata

Gestisci Utente, FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote con uno schema coerente.

Record familiari collegati a fonti

Allega valori sourceStatus, fileUrl e recordDate a ciascun elemento dell'albero e scansione.

Flusso di revisione del corrispondenza DNA

Tieni traccia di kitId, matchName, sharedCm, matchStatus e reviewedBy come parte del processo di revisione.

Design del campo cronologico-prima

Memorizza birthDate, deathDate, recordDate, createdAt e updatedAt affinché le cronologie rimangano leggibili.

REST/GraphQL API per genealogia

Integra dati dell'albero genealogico, scansione di documenti e corrispondenza del DNA con API flessibili.

Confronto Stack Genealogico

Confronta la velocità di installazione, lo stile SDK e il supporto AI tra tutte le tecnologie supportate.

FrameworkTempo di InstallazioneVantaggio della ricerca genealogicaTipo di SDKSupporto IA
Circa 5 minUn'unica base di codice per la ricerca genealogica su mobile e web.SDK tipizzatoCompleto
Meno di 5 minutiDashboard di ricerca rapida per la revisione dell'albero genealogico.SDK tipizzatoCompleto
~3–7 minApp mobile multipiattaforma per il lavoro di genealogia sul campo.SDK digitatoCompleto
Impostazione rapida (5 min)App web renderizzata dal server per archivi di ricerca.SDK digitatoCompleto
~3–5 minIntegrazione web leggera per la navigazione dell'albero genealogico.SDK digitatoCompleto
Circa 5 minApp nativa Android per revisione genealogica in loco.SDK DigitatoCompleto
Meno di 5 minutiApp nativa iOS per accesso all'archivio familiare.SDK DigitatoCompleto
~3–7 minInterfaccia web Reactiva per note di ricerca e scansioni.SDK DigitatoCompleto
Installazione rapida (5 min)Applicazione web enterprise per la gestione della parentela.SDK DigitatoCompleto
Meno di 2 minutiAPI flessibile di GraphQL per la ricerca genealogica.GraphQL APICompleto
Impostazione rapida (2 min)Integrazione di REST API per registri genealogici.REST APICompleto
~3 minutiBackend di PHP lato server per flussi di lavoro di archiviazione.REST APICompleto
~3–7 min.NET backend per i team di ricerca genealogica.SDK digitatoCompleto

Il tempo di configurazione riflette la durata prevista dal avvio del progetto alla prima query FamilyTree o DocumentScan utilizzando questo schema di template.

Domande di genealogia

Domande comuni sulla creazione di un backend di ricerca genealogica con questo modello.

Come fanno le pratiche di ricerca genealogica a mantenere alta la qualità dell'assunzione man mano che il volume cresce?
Come dovrebbero i team di ricerca genealogica modellare clienti, questioni e trasferimenti interni senza ambiguità?
Questo layer CRM per la ricerca genealogica può crescere con nuovi tipi di questioni e canali di acquisizione?
Come eseguo query per alberi genealogici e scansioni con Flutter?
Come gestisco l'accesso alla ricerca genealogica con Next.js Server Actions?
React può memorizzare nella cache i dati genealogici offline?
Come posso prevenire l'accesso non autorizzato a scansioni?
Qual è il modo migliore per mostrare l'albero genealogico su Android?
Come funziona il flusso di lavoro della scansione del documento dall'inizio alla fine?
Quali classi alimentano questo modello di ricerca genealogica?

Affidato a sviluppatori in tutto il mondo

Unisciti ai team che lanciano prodotti di ricerca genealogica più velocemente con i template di Back4app

G2 Users Love Us Badge

Pronto per costruire la tua app di ricerca genealogica?

Inizia il tuo progetto di ricerca genealogica in pochi minuti. Nessuna carta di credito richiesta.

Scegli Tecnologia