Modelo de Backend de Aplicativo de Pesquisa Genealógica __PH0__
Rastreamento de FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote
Um backend de pesquisa genealógica pronto para produção no Back4app para registros FamilyTree, parentes FamilyNode, fontes DocumentScan, revisões DnaMatchLog e descobertas ResearchNote. Inclui diagrama ER, guia de campos, esquema JSON, sandbox API, e um prompt de Agente de IA para bootstrap rápido.
Principais Aprendizados da Pesquisa Genealógica
Este template fornece um backend para pesquisa genealógica com FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote, para que sua equipe possa organizar evidências de linhagem e trilhas de fonte.
- Painel de controle do FamilyTree — Modele cada FamilyTree com treeName, originRegion, status e owner, para que cada espaço de trabalho de linhagem permaneça rastreável.
- Rastreamento de linhagem do FamilyNode — Registre cada FamilyNode com fullName, relationship, birthDate, deathDate, sourceStatus e createdBy para uma revisão clara.
- Catálogo de fontes do DocumentScan — Armazene cada DocumentScan com title, fileUrl, documentType, recordDate e uploadedBy para evidências respaldadas por fontes.
- Fluxo de revisão do DnaMatchLog — Rastreie cada DnaMatchLog com kitId, matchName, sharedCm, matchStatus e reviewedBy para acompanhamento de DNA.
- Notas de evidência ResearchNote — Vincule cada ResearchNote a uma FamilyTree e um relatedNode opcional para que as descobertas permaneçam anexadas ao ramo correto.
Visão geral: Aplicativo de Pesquisa Genealógica
Um pipeline saudável de pesquisa genealógica tem estágios claros, proprietários e critérios de saída — caso contrário, "em progresso" se torna um buraco negro. Os clientes sentem isso no ETA que você promete. Back4app ancla FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote para práticas de pesquisa genealógica que precisam de prazos, documentos e comunicações em um espaço de trabalho com permissão. O esquema abrange User (nome de usuário, email, papel), FamilyTree (nome da árvore, região de origem, status, proprietário), FamilyNode (nome completo, relacionamento, data de nascimento, data de falecimento, status da fonte, criado por), DocumentScan (título, fileUrl, tipo de documento, data de registro, enviado por), DnaMatchLog (kitId, matchName, sharedCm, matchStatus, reviewedBy) e ResearchNote (assunto, corpo, relatedNode, autor). Conecte seu frontend preferido e comece a capturar a história da família com linhagem estruturada e links de fonte.
Melhor para:
O que você obtém no modelo de Pesquisa Genealógica
Se os intervenientes da pesquisa genealógica não conseguem responder a perguntas simples em segundos, eles as responderão em reuniões — lenta e caras.
O hub destaca o FamilyTree, FamilyNode e DocumentScan para que você possa comparar pilhas de clientes contra as mesmas entidades, campos e relacionamentos.
Conjunto de recursos do aplicativo de genealogia
Cada cartão de tecnologia neste hub utiliza o mesmo esquema de genealogia com User, FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote.
Contas de usuário e funções
O usuário armazena nome de usuário, e-mail, senha e função.
Registros de FamilyTree e FamilyNode
FamilyTree mantém treeName, originRegion, status e owner, enquanto FamilyNode mantém fullName e relationship.
Registro de fonte de DocumentScan
DocumentScan captura título, fileUrl, tipo de documento, e data do registro.
Revisões de DnaMatchLog
DnaMatchLog armazena kitId, matchName, sharedCm e matchStatus.
Por que construir seu backend de pesquisa genealógica com Back4app?
Back4app oferece a você os primitivas FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote para que sua equipe possa se concentrar na revisão de evidências em vez de na gestão do banco de dados.
- •Estrutura FamilyTree e FamilyNode: As classes FamilyTree e FamilyNode armazenam treeName, originRegion, fullName, relationship e sourceStatus em um formato consultável.
- •DocumentScan e controle de fonte: Os registros DocumentScan mantêm título, fileUrl, documentType, recordDate e uploadedBy juntos, assim cada fonte permanece anexada à árvore correta.
- •Revisão de DNA e trilhas de notas: Os registros DnaMatchLog e ResearchNote mantêm kitId, matchName, sharedCm, matchStatus, subject e relatedNode para que os revisores possam acompanhar cada comparação.
Construa e itere rapidamente em fluxos de trabalho genealógicos com um contrato de backend em todas as plataformas.
Benefícios da Pesquisa Genealógica
Um backend de pesquisa genealógica que ajuda você a manter trilhas de fontes e anotações de linhagem organizadas.
Configuração de pesquisa mais rápida
Comece a partir de um esquema completo de Usuário, Árvore Genealógica, Nó Familiar, Digitalização de Documento, Registro de Correspondência de DNA e Nota de Pesquisa, em vez de defini-lo do zero.
Registros familiares vinculados a fontes
Vincule cada Nó Familiar ao sourceStatus, birthDate, deathDate e createdBy para uma atribuição mais clara.
Escaneamento e rastreabilidade de notas
Use campos de Digitalização de Documento como título, fileUrl, documentType e recordDate, e conecte entradas de Nota de Pesquisa ao Nó Familiar correto.
Rastreabilidade da revisão de DNA
Use campos de Registro de Correspondência de DNA como kitId, matchName, sharedCm e matchStatus para documentar trabalhos de acompanhamento.
Acesso controlado a notas sensíveis de linhagem
Use ACL e CLP para que apenas usuários autorizados possam editar entradas de Árvore Genealógica, Nó Familiar, Digitalização de Documento e Nota de Pesquisa.
Armazenamento de evidências cronológicas
Armazene createdAt, updatedAt, recordDate e reviewedBy entre classes sem achatar a trilha de pesquisa.
Pronto para lançar seu aplicativo de pesquisa genealógica?
Deixe o agente de IA da Back4app estruturar seu backend de pesquisa genealógica e gerar fluxos de trabalho FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote a partir de um prompt.
Grátis para começar — 50 prompts de agente de IA/mês, sem necessidade de cartão de crédito
Stack de Tecnologia
Tudo incluído neste template de backend para pesquisa genealógica.
Mapa de ER de Genealogia
Modelo de relacionamento de entidade para o esquema de backend de pesquisa de genealogia.
Esquema cobrindo usuários, árvores genealógicas, nós de família, escaneamentos de documentos, registros de match de DNA e notas de pesquisa.
Ver fonte do diagrama
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
}
Fluxo de Integração de Genealogia
Fluxo de execução típico para login, carregamento do painel FamilyTree, criação de FamilyNode, upload de DocumentScan, revisão de DnaMatchLog e sincronização de ResearchNote.
Ver fonte do diagrama
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 ResearchNoteGuia de Campo
Referência completa em nível de campo para cada classe no esquema de pesquisa de genealogia.
| Campo | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Automático |
| username | String | Staff login name | |
| String | Staff email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role of the user (e.g., researcher, reviewer, admin) | |
| createdAt | Date | Auto-generated creation timestamp | Automático |
| updatedAt | Date | Auto-generated last-update timestamp | Automático |
7 campos em User
Permissões e Acesso de Função
Como a estratégia ACL e CLP protege usuários, árvores genealógicas, nós familiares, scans, logs de DNA e notas de pesquisa.
Proteção de login de funcionários
Use a classe Usuário apenas para funcionários autenticados, com valores de função como pesquisador, revisor e administrador.
Integridade da fonte para registros de árvore
Use validação de Cloud Code para que entradas de FamilyTree, FamilyNode e ResearchNote incluam treeName esperado, fullName, sourceStatus ou body antes de salvar.
Visibilidade de linhagem com escopo
Limite as leituras para que as equipes de pesquisa possam visualizar apenas os ramos da ÁrvoreGenealógica, os arquivos de DocumentScan e as entradas de DnaMatchLog que estão autorizadas a revisar.
JSON Schema
Definição de schema JSON cru pronta para copiar no Back4app ou usar como referência de implementação.
{
"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
}
}
}
]
}Construir com Agente AI
Use o Agente AI do Back4app para gerar um aplicativo real de pesquisa genealógica a partir deste template, incluindo frontend, backend, autenticação, e os fluxos de ÁrvoreGenealógica, NóGenealógico, DocumentScan, DnaMatchLog e NotaDePesquisa.
Crie um backend de aplicativo de pesquisa de genealogia no Back4app com este esquema e comportamento exatos. Esquema: 1. Usuário (use o perfil de autenticação embutido do Back4app): nome de usuário (String, obrigatório), e-mail (String, obrigatório), senha (String, obrigatório), papel (String, obrigatório); objectId, createdAt, updatedAt (sistema). 2. ÁrvoreGenealógica: nomeDaÁrvore (String, obrigatório), regiãoDeOrigem (String, opcional), status (String, obrigatório), proprietário (Ponteiro para Usuário, obrigatório); objectId, createdAt, updatedAt (sistema). 3. NóFamiliar: árvore (Ponteiro para ÁrvoreGenealógica, obrigatório), nomeCompleto (String, obrigatório), relacionamento (String, obrigatório), dataNascimento (Data, opcional), dataFalecimento (Data, opcional), statusFonte (String, obrigatório), criadoPor (Ponteiro para Usuário, obrigatório); objectId, createdAt, updatedAt (sistema). 4. DocumentoEscaneado: árvore (Ponteiro para ÁrvoreGenealógica, obrigatório), título (String, obrigatório), urlArquivo (String, obrigatório), tipoDocumento (String, obrigatório), dataRegistro (Data, opcional), enviadoPor (Ponteiro para Usuário, obrigatório); objectId, createdAt, updatedAt (sistema). 5. RegistroDeCorrespondênciaDna: árvore (Ponteiro para ÁrvoreGenealógica, obrigatório), kitId (String, obrigatório), nomeCorrespondente (String, obrigatório), cmCompartilhado (Número, obrigatório), statusCorrespondente (String, obrigatório), revisadoPor (Ponteiro para Usuário, opcional); objectId, createdAt, updatedAt (sistema). 6. NotaDePesquisa: árvore (Ponteiro para ÁrvoreGenealógica, obrigatório), assunto (String, obrigatório), corpo (String, obrigatório), nóRelacionado (Ponteiro para NóFamiliar, opcional), autor (Ponteiro para Usuário, obrigatório); objectId, createdAt, updatedAt (sistema). Segurança: - Apenas usuários autenticados podem criar nós de árvore, escaneamentos, notas e registros de DNA. - Proprietários da árvore e revisores podem atualizar o conteúdo da árvore; restrinja escaneamentos de documentos ao seu uploader ou a um papel de admin. - Proteja informações pessoais e notas de histórico familiar com ACLs baseadas em papéis e permissões de classe. Autenticação: - Cadastro, login, logout. Comportamento: - Gerencie árvores genealógicas, adicione nós de pessoas, anexe escaneamentos de documentos, revise correspondências de DNA e escreva notas de pesquisa. Entrega: - Aplicativo Back4app com esquema, ACLs, CLPs; frontend para árvores genealógicas, escaneamentos de documentos, registros de correspondências de DNA e revisão de notas.
Pressione o botão abaixo para abrir o Agente com este prompt de template pré-preenchido.
Este é o prompt base sem um sufixo de tecnologia. Você pode adaptar a pilha de frontend gerada posteriormente.
API Sandbox
Experimente os endpoints REST e GraphQL contra o esquema de pesquisa de genealogia. As respostas usam dados fictícios e não requerem uma conta Back4app.
Usa o mesmo esquema que este modelo.
Escolha Sua Tecnologia
Expanda cada cartão para ver como integrar FamilyTree, FamilyNode e DocumentScan com sua pilha escolhida.
Flutter Pesquisa de Genealogia Backend
React Pesquisa de Genealogia Backend
React Nativo Pesquisa de Genealogia Backend
Next.js Pesquisa de Genealogia Backend
JavaScript Pesquisa de Genealogia Backend
Android Pesquisa de Genealogia Backend
iOS Pesquisa de Genealogia Backend
Vue Pesquisa de Genealogia Backend
Angular Pesquisa de Genealogia Backend
GraphQL Pesquisa de Genealogia Backend
REST API Pesquisa de Genealogia Backend
PHP Pesquisa de Genealogia Backend
.NET Pesquisa de Genealogia Backend
O que você obtém com cada tecnologia
Cada pilha usa o mesmo esquema de backend de pesquisa genealógica e contratos de API.
Estrutura de dados genealógicos unificada
Gerencie User, FamilyTree, FamilyNode, DocumentScan, DnaMatchLog e ResearchNote com um esquema consistente.
Registros de família vinculados a fontes
Anexe valores de sourceStatus, fileUrl e recordDate a cada entrada da árvore e digitalização.
Fluxo de revisão de correspondência de DNA
Rastrear kitId, matchName, sharedCm, matchStatus e reviewedBy como parte do processo de revisão.
Design de campo baseado na cronologia
Armazenar birthDate, deathDate, recordDate, createdAt e updatedAt para que as linhas do tempo permaneçam legíveis.
APIs REST/GraphQL para genealogia
Integrar árvore genealógica, digitalização de documentos e dados de correspondência de DNA com APIs flexíveis.
Comparação de Stack de Genealogia
Compare a velocidade de configuração, o estilo do SDK e o suporte de IA entre todas as tecnologias suportadas.
| Framework | Tempo de Configuração | Benefício de Pesquisa Genealógica | Tipo de SDK | Suporte de IA |
|---|---|---|---|---|
| Cerca de 5 minutos | Base de código única para pesquisa genealógica em dispositivos móveis e na web. | SDK Tipado | Completo | |
| Menos de 5 minutos | Painel de pesquisa rápido para revisão da árvore genealógica. | SDK Tipado | Completo | |
| ~3–7 min | Aplicativo móvel multiplataforma para trabalho de genealogia de campo. | SDK Tipado | Completo | |
| Configuração rápida (5 min) | Aplicativo web renderizado no servidor para arquivos de pesquisa. | SDK Tipado | Completo | |
| ~3–5 min | Integração web leve para navegação em árvore genealógica. | SDK Tipado | Completo | |
| Cerca de 5 min | Aplicativo nativo Android para revisão genealógica no local. | SDK Digitado | Completo | |
| Menos de 5 minutos | Aplicativo nativo iOS para acesso a arquivos familiares. | SDK Digitado | Completo | |
| ~3–7 min | Interface web Reactiva para notas de pesquisa e escaneamentos. | SDK Digitado | Completo | |
| Configuração rápida (5 min) | Aplicativo web empresarial para gerenciamento de linhagem. | SDK Digitado | Completo | |
| Menos de 2 min | API flexível GraphQL para pesquisa genealógica. | API GraphQL | Completo | |
| Configuração rápida (2 min) | Integração REST API para registros de árvore genealógica. | REST API | Completo | |
| ~3 min | Backend PHP no lado do servidor para fluxos de trabalho de arquivamento. | REST API | Completo | |
| ~3–7 min | .NET backend para equipes de pesquisa genealógica. | SDK Digitado | Completo |
O tempo de configuração reflete a duração esperada desde o início do projeto até a primeira consulta FamilyTree ou DocumentScan usando este esquema de template.
Questões de Genealogia
Perguntas comuns sobre como construir um backend de pesquisa genealógica com este modelo.
Pronto para Construir Seu Aplicativo de Pesquisa Genealógica?
Comece seu projeto de pesquisa genealógica em minutos. Nenhum cartão de crédito necessário.