Este é um aplicativo desenvolvido em Flutter que exibe uma lista de municípios do Brasil, organizados por estado. Os dados utilizados são oficiais do IBGE e incluem informações como código do município, nome do município, microrregião, mesorregião e estado.
-
Seleção de Estado:
- Apresente todos os estados brasileiros em um menu dropdown organizado em ordem alfabética.
- Permita ao usuário selecionar um estado para filtrar os municípios correspondentes.
-
Listagem de Municípios:
- Exiba uma lista dos municípios do estado selecionado, ordenados alfabeticamente.
- Ofereça navegação simples e rápida, com opção de clicar no nome do município para acessar mais informações.
-
Detalhes do Município:
- Apresente informações detalhadas sobre o município, incluindo:
- Código do município (código oficial do IBGE).
- Nome do município.
- Microrregião.
- Mesorregião.
- Estado.
- Apresente informações detalhadas sobre o município, incluindo:
-
Arquitetura Clean Code Architecture:
- Implementação seguindo o padrão de Clean Architecture, promovendo uma separação clara entre as camadas de Data, Domain e Presentation.
- Facilita a manutenção, teste e escalabilidade do aplicativo.
-
Gerenciamento de Estado com Bloc:
- Utilização do pacote
flutter_bloc
para gerenciar os estados do aplicativo. - Controle eficaz de carregamento, exibição de dados e mensagens de erro.
- Utilização do pacote
- Flutter: Framework de desenvolvimento multiplataforma para a criação da interface e navegação.
- Dio: Biblioteca para requisições HTTP, utilizada para consumir a API oficial do IBGE.
- Provider: Gerenciamento de dependências para injeção de serviços como data sources, repositórios e casos de uso.
- Bloc (flutter_bloc): Gerenciamento de estado baseado em eventos, garantindo uma experiência fluida e controlada para o usuário.
O objetivo principal é fornecer uma ferramenta prática, confiável e eficiente para consultar municípios brasileiros, com dados oficiais do IBGE, atendendo a diferentes públicos, como pesquisadores, desenvolvedores, estudantes e interessados em geografia e administração pública.
/lib
: Contém o código principal do aplicativo./data
: Lida com fontes de dados e repositórios./domain
: Contém entidades e casos de uso./presentation
: Contém controladores, estados e interfaces do usuário.
/test
: Contém o código dos testes unitários do aplicativo.pubspec.yaml
: Arquivo de dependências do Flutter.README.md
: Documentação do projeto.
Antes de começar, verifique se você possui os seguintes itens instalados no seu sistema:
- Flutter na versão 3.27.1.
- Dart na versão 3.6.0 (instalado com o Flutter).
- Git para clonar o repositório.
- Editor de Código (recomendado: VS Code ou Android Studio).
-
Baixe o Flutter
- Acesse o repositório oficial do Flutter no GitHub: https://github.com/flutter/flutter.git.
- Clone o repositório na branch
stable
:git clone https://github.com/flutter/flutter.git -b stable
- Certifique-se de que o diretório
flutter
está noPATH
do sistema.
-
Verifique a Instalação
- Execute o comando abaixo para verificar se o Flutter está instalado corretamente:
flutter doctor
- Execute o comando abaixo para verificar se o Flutter está instalado corretamente:
-
Instale as Dependências
- Dentro do diretório do projeto, execute:
flutter pub get
- Dentro do diretório do projeto, execute:
-
Execute no Emulador ou Dispositivo Físico
- Certifique-se de que um dispositivo está conectado e listado:
flutter devices
- Execute o aplicativo:
flutter run
- Certifique-se de que um dispositivo está conectado e listado:
-
Opções Avançadas
- Para construir o aplicativo para Android:
flutter build apk
- Para iOS (exige MacOS e Xcode configurado):
flutter build ios
- Para construir o aplicativo para Android: