Loading repository data…
Loading repository data…
Otavio-Emanoel / repository
HelloJava é um aplicativo interativo desenvolvido em Flutter, inspirado na dinâmica envolvente do Duolingo, criado para tornar o aprendizado de Java simples, divertido e eficiente. Com uma metodologia baseada em exercícios práticos, quizzes gamificados e lições rápidas, o HelloJava ajuda você a dominar desde os conceitos básicos de Java.
Aprenda Java de forma interativa em um app moderno feito em Flutter, com mapa de fases estilo liquid glass, exercícios gamificados, conquistas, laboratório e chat com IA (Gemini) para tirar dúvidas.
lib/
main.dart # Shell do app e navegação por PageView
screens/
map_screen.dart # Mapa com estrada e nós (fases) em liquid glass
exercise_screen.dart # Exercícios e pontuação
content_screen.dart # Conteúdo em Markdown
profile_screen.dart # Perfil com XP/moedas e edição de nome
achievements_screen.dart # Conquistas (Star)
labs_screen.dart # Laboratório / extras (Extension)
chat_screen.dart # Chat com IA (Gemini)
widgets/
glass_nav_bar.dart # Barra de navegação "liquid glass"
assets/
icon.png # Logo do app
content/*.md # Conteúdo das seções
section-1-questions*.json # Questões de exemplo
.env # Variáveis de ambiente (GEMINI_API_KEY)
flutter pub get
.env na raiz do projeto com sua chave da API do Gemini:GEMINI_API_KEY=coloque_sua_chave_aqui
Em um dispositivo/simulador já configurado:
flutter run
Desktop (opcional):
flutter config --enable-linux-desktop
flutter config --enable-windows-desktop
flutter run -d linux # ou -d windows
Android (APK release):
# Requer JDK 17 e JAVA_HOME configurado
flutter build apk --release
Windows/Linux (desktop):
flutter build windows --release
flutter build linux --release
flutter run --profile
O app usa flutter_dotenv para ler o arquivo .env:
GEMINI_API_KEY: chave da API do Google Gemini usada pelo chat.Mantenha esse arquivo fora de commits públicos.
shared_preferences: progresso (xp, moedas, melhores pontuações)flutter_markdown: renderização de conteúdo em Markdowngoogle_generative_ai: integração com Gemini (chat)flutter_dotenv: variáveis de ambienteimage_picker: suporte a imagem (quando aplicável)Sugestões e PRs são bem-vindos! Abra uma issue descrevendo sua ideia ou bug encontrado.
Feito com Flutter 💙