Skip to content

About

Native dictionary for your desktop.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

35 Commits

Folders and files

Repository files navigation

DictOS Desktop

Dicionário popup offline-first inspirado na experiência de consulta rápida do Apple Dictionary: selecione texto em qualquer aplicativo, pressione um atalho global e veja a definição numa janela flutuante, sem interromper o trabalho.

  • Alvo 1: Windows · Alvo 2: Arch Linux + Hyprland (Wayland)
  • Linguagem: Rust · Interface: Slint (Windows) / GTK4+layer-shell (Wayland)
  • Dicionários: offline por padrão (WordNet 3.1), online opcional, en–en e en–pt

Requisitos em SPEC.md · Arquitetura em ARCHITECTURE.md · Licenças de dados em NOTICES.md

Status

Etapa 6 de 8 concluída — dicionário en–pt (traduções do Kaikki/Wiktionary, CC BY-SA, download opcional) consultado em conjunto com o en–en (--dict repetível), e consulta online opcional ao dictionaryapi.dev: só acontece por ação explícita (flag --online ou botão "🌐 Consultar online" no popup) e grava a resposta num cache local criptografado via DPAPI, o que permite reconsulta offline.

Roadmap

Etapa Entrega Status
1. Fundação Workspace, core + dictionary (fst), CLI import/lookup/suggest, 13 testes ✅
2. Dados reais Importador WordNet 3.1, dataset en–en, NOTICES, pipeline reproduzível ✅
3. MVP Windows Hotkey global + captura UIA + fallback clipboard + popup Slint + daemon ✅
4. Robustez Windows Posicionamento junto à seleção, blocklist, DPI, erros de captura ✅
5. Config + histórico Preferências (SQLite), histórico opt-in criptografado (DPAPI), janela configurável ✅
6. en–pt + online Traduções Kaikki (CC BY-SA), multi-dicionário, online opcional com cache criptografado ✅
7. Linux/Hyprland ext-data-control, bind no hyprland.conf, popup GTK4 layer-shell ⬜ próxima
8. Distribuição Instalador Windows, build Arch, CI, tela About ⬜

Detalhes e critérios de aceitação de cada etapa em ROADMAP.md.

Uso atual

# Gerar o dicionário offline (uma vez — ver data/README.md)
cargo run -p dictos -- import-wordnet data/raw/dict --out data/dict/en-wordnet

# Traduções en–pt (opcional, CC BY-SA — ver data/README.md)
cargo run -p dictos -- import-kaikki data/raw/kaikki.org-dictionary-English.jsonl.gz --out data/dict/en-pt-kaikki

# Consultar via CLI (repita --dict para combinar dicionários)
cargo run -p dictos -- lookup apple --dict data/dict/en-wordnet --dict data/dict/en-pt-kaikki
cargo run -p dictos -- suggest serend --dict data/dict/en-wordnet

# Consulta online opcional (envia a palavra ao dictionaryapi.dev; resposta fica em cache criptografado)
cargo run -p dictos -- lookup serendipity --dict data/dict/en-wordnet --online

# Daemon: selecione texto em qualquer app e pressione Ctrl+Shift+D
# (o popup tem o botão "🌐 Consultar online" para o caso de a palavra faltar offline)
cargo run -p dictos -- run --dict data/dict/en-wordnet --dict data/dict/en-pt-kaikki
cargo run -p dictos -- run --dict data/dict/en-wordnet --hotkey "Ctrl+Alt+D"

# Preferências e histórico (opt-in, criptografado via DPAPI)
cargo run -p dictos -- config list
cargo run -p dictos -- config set popup.font_scale 1.2
cargo run -p dictos -- history on && cargo run -p dictos -- history list

# Teste E2E manual do popup (abre Bloco de Notas, seleciona, aciona o atalho)
powershell -ExecutionPolicy Bypass -File scripts/e2e-popup.ps1

Desenvolvimento

cargo test --workspace   # 68 testes

Branches

  • master — versão estável (só recebe merges testados e aprovados)
  • develop — branch de desenvolvimento; novas features saem daqui

Licença

Código sob dual MIT/Apache-2.0 (a formalizar na Etapa 8). Dados de dicionário sob suas próprias licenças — ver NOTICES.md.

About

Native dictionary for your desktop.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages