-
Notifications
You must be signed in to change notification settings - Fork 0
Developer Guide
Marcelo Trindade edited this page Aug 29, 2026
·
1 revision
O projeto é um aplicativo desktop local, síncrono e deliberadamente simples na infraestrutura.
- Rust 2021;
- Slint;
- rusqlite com SQLite bundled;
- serde/toml para configuração;
- chrono;
- rfd para seleção gráfica de arquivos;
- webbrowser/urlencoding para consultas externas.
ui/ interface Slint
src/app/ handlers/serviços de apresentação
src/domain/ entidades e validações
src/database/ SQLite, migrations, queries, ADIF, backup e health
src/main.rs composition root
A UI não executa SQL e a camada de banco não depende de Slint.
- SQLite é a fonte de verdade;
- migrations publicadas não são reescritas;
- operações que exigem atomicidade permanecem transacionais;
- campos de modo específicos ficam explícitos;
- abstração só é adicionada quando remove duplicação real sem esconder contratos;
- ADIF preserva unknown fields dentro do contrato;
- UI v0.11 prefere widgets nativos antes de componentes customizados.
Veja Build e ambiente.
Leia:
Siga Adicionar modo digital.
Execute os gates:
cargo fmt --check
cargo check --locked
cargo clippy --locked --all-targets --all-features -- -D warnings
cargo test --locked
cargo build --lockedMudanças de release têm gates adicionais. Veja Processo de release.
Home · Primeiros passos · Solução de problemas · Repositório
Digital Ham Radio Logbook · documentação da comunidade/projeto
Comece aqui
Guia do usuário
Dados e interoperabilidade
- Importar ADIF
- Exportar ADIF
- Compatibilidade ADIF
- Backup e saúde dos dados
- Recuperação de dados
- Dados e privacidade
Configuração
Suporte
Desenvolvimento
- Guia do desenvolvedor
- Build e ambiente
- Arquitetura
- Arquitetura da UI
- Adicionar modo digital
- Processo de release
Projeto