You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Scanora é um app Android de escaneamento de documentos com foco em processamento local, OCR no dispositivo e um fluxo direto de captura, revisão e exportação.
14
11
15
-
Scanora é um app Android original de escaneamento de documentos com foco em privacidade, processamento local e uma experiência rápida de captura, revisão e exportação.
Enquanto isso, o repositório já está validado com build Android, lint e testes unitários passando no CI.
41
27
42
28
## Stack
43
29
44
30
- Kotlin
45
31
- Android Gradle Plugin 9.1.0
46
-
- Gradle 9.3.1 Wrapper
47
32
- Jetpack Compose + Material 3
48
33
- Navigation Compose
49
34
- ViewModel + Coroutines + Flow
@@ -54,62 +39,50 @@ Placeholders iniciais:
54
39
- ML Kit Document Scanner
55
40
- ML Kit Text Recognition
56
41
57
-
## Arquitetura resumida
58
-
59
-
Estrutura modular usada no repositório:
42
+
## Arquitetura
60
43
61
-
-`app`: entrypoint, navegação, onboarding, splash e composição dos módulos.
62
-
-`core-common`: modelos, contratos de repositório e use cases centrais.
63
-
-`core-data`: Room, DataStore, OCR, exportação e pipeline local de imagem.
64
-
-`core-ui`: tema e componentes reutilizáveis de UI.
65
-
-`feature-home`, `feature-camera`, `feature-editor`, `feature-export`, `feature-history`, `feature-settings`, `feature-ocr`: telas e ViewModels por contexto funcional.
44
+
-`app`: bootstrap, navegação, onboarding e integração dos módulos
45
+
-`core-common`: modelos, contratos e use cases
46
+
-`core-data`: Room, DataStore, OCR, exportação e processamento de imagem
47
+
-`core-ui`: tema e componentes reutilizáveis
48
+
-`feature-*`: telas e ViewModels por contexto funcional
66
49
67
-
Mais detalhes em [docs/architecture.md](docs/architecture.md).
50
+
Documentação técnica:
51
+
-[docs/architecture.md](docs/architecture.md)
52
+
-[docs/decisions.md](docs/decisions.md)
53
+
-[docs/setup.md](docs/setup.md)
54
+
-[docs/testing.md](docs/testing.md)
55
+
-[docs/publishing.md](docs/publishing.md)
68
56
69
57
## Como rodar
70
58
71
-
1. Abra o projeto no Android Studio mais recente com suporte a AGP 9.1.
72
-
2. Use JDK 17 ou superior compatível com AGP 9 no Gradle.
59
+
1. Abra o projeto no Android Studio com suporte a AGP 9.1.
60
+
2. Use JDK 17 ou superior compatível com AGP 9.
73
61
3. Instale Android SDK Platform 36 e Build Tools 36.0.0.
74
-
4. Rode `./gradlew assembleDebug` ou use o botão Run do Android Studio.
62
+
4. Rode `./gradlew assembleDebug` ou execute o módulo `app`.
75
63
76
-
Setup detalhado: [docs/setup.md](docs/setup.md)
64
+
Package atual:
65
+
-`applicationId`: `com.soturine.scanora`
66
+
- namespace base: `com.soturine.scanora`
77
67
78
-
## Privacidade
68
+
## GitHub e CI
79
69
80
-
- Processamento local por padrão.
81
-
- OCR e filtros são executados no dispositivo sempre que possível.
82
-
- O scanner guiado do ML Kit depende de componentes do Google Play services no aparelho.
83
-
- O app não exige backend nem conta para funcionar no MVP.
70
+
- O workflow [Android CI](https://github.com/Soturine/scanora/actions/workflows/android-ci.yml) builda o projeto, roda lint e testes unitários.
71
+
- O site em GitHub Pages é publicado a partir de `site/`.
72
+
- Para o Pages funcionar no repositório publicado, ative em `Settings > Pages > Source: GitHub Actions`.
84
73
85
-
Leia a política em [PRIVACY_POLICY.md](PRIVACY_POLICY.md).
86
-
87
-
## Limitações atuais
88
-
89
-
- O pipeline local de detecção de documento ainda é heurístico para importações/capturas manuais.
90
-
- O scanner guiado depende da disponibilidade do ML Kit no dispositivo.
91
-
- Build, lint e testes unitários foram validados localmente em 2026-04-21 com Android SDK Platform 36.
92
-
- A revisão visual desta rodada foi estática, via Compose/code review; ainda vale fechar QA em emulador e dispositivos reais.
93
-
- Ainda não há sincronização em nuvem, criptografia em repouso ou edição colaborativa.
94
-
95
-
## Contribuição
96
-
97
-
Contribuições são bem-vindas. Consulte:
98
-
99
-
-[CONTRIBUTING.md](CONTRIBUTING.md)
100
-
-[CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)
101
-
-[SECURITY.md](SECURITY.md)
74
+
## Privacidade
102
75
103
-
## Roadmap
76
+
- processamento local por padrão;
77
+
- OCR e filtros executados no dispositivo sempre que possível;
78
+
- sem backend obrigatório, login ou sync no MVP.
104
79
105
-
Resumo curto:
80
+
Política completa em [PRIVACY_POLICY.md](PRIVACY_POLICY.md).
106
81
107
-
- Curto prazo: melhorar detecção de contornos, UX de crop e qualidade de exportação.
108
-
- Médio prazo: lote multi-importação mais robusto, favoritos avançados e mais testes.
109
-
- Longo prazo: preparação de release 1.0, hardening de storage e refinamento de OCR.
82
+
## Status
110
83
111
-
Versão completa em [ROADMAP.md](ROADMAP.md).
84
+
`0.1.2` representa um MVP funcional com estrutura mais limpa de repositório, package real e CI ativo. Ainda faltam capturas reais, QA visual em dispositivos e refinamentos para uma release 1.0.
112
85
113
-
## Status do projeto
86
+
## Contribuir
114
87
115
-
`0.1.1` representa um MVP funcional e escalável, já validado em build local e pronto para refinamento técnico e polimento de produção.
88
+
Consulte [CONTRIBUTING.md](CONTRIBUTING.md), [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md), [SECURITY.md](SECURITY.md) e [ROADMAP.md](ROADMAP.md).
0 commit comments