StellarView es una aplicación educativa para Android diseñada para inspirar curiosidad sobre la astronomía y las ciencias del espacio. Ya seas estudiante, entusiasta de la astronomía o desarrollador Android, esta app es tanto una herramienta educativa atractiva como un ejemplo completo de código.
- Para Entusiastas de la Astronomía: Explora las imágenes astronómicas diarias de la NASA, pon a prueba tus conocimientos con trivia interactiva y descubre el cosmos.
- Para Desarrolladores Android: Aprende patrones modernos de desarrollo Android, arquitectura y buenas prácticas mediante una implementación real.
🖼️ Integración con NASA APOD - Imágenes astronómicas diarias con descripciones profesionales
🧠 Trivia Interactiva de Astronomía - Pon a prueba y expande tu conocimiento cósmico
⭐ Sistema de Favoritos - Guarda y organiza tus descubrimientos astronómicos favoritos
🌙 Tema Claro/Oscuro - Visualización cómoda para el día y la noche
🌍 Soporte Multilenguaje - Disponible en inglés, español e italiano
🎵 Efectos de Sonido - Experiencia mejorada con retroalimentación auditiva
Este proyecto demuestra prácticas modernas de desarrollo Android:
- Patrón MVVM - Separación clara de responsabilidades
- Patrón Repository - Abstracción limpia de la capa de datos
- Navigation Component - Arquitectura de actividad única
- View Binding - Referencias de vistas seguras y con tipado
- Kotlin - Lenguaje moderno para desarrollo Android
- Layouts XML + View Binding - Desarrollo de UI tradicional (antes de Compose)
- Room Database - Persistencia de datos local
- Retrofit - Integración con API de la NASA
- Dagger Hilt - Inyección de dependencias
- Coroutines - Programación asíncrona
- Material Design Components - Componentes modernos de UI
- Lottie Animations - Interacciones visuales atractivas
- Coil - Carga y almacenamiento de imágenes
- Firebase - Servicios de backend y analíticas
- NASA APOD API - Imagen Astronómica del Día
- SQLite local - Almacenamiento de preguntas de trivia y favoritos
- Firebase Analytics - Métricas de uso (solo en producción)
- Android Studio Arctic Fox o superior
- SDK de Android 30+
- Java 17
- Clona el repositorio
git clone https://github.com/JavFuentes/StellarView.git-
Ábrelo en Android Studio
-
Sincroniza el proyecto con los archivos Gradle
-
Ejecuta en un dispositivo o emulador
- Obtén tu clave gratuita desde el Portal de Datos Abiertos de la NASA
- Agrégala a tu
local.properties:
NASA_API_KEY="tu_clave_aqui"Este proyecto usa Firebase para autenticación y almacenamiento. Sigue estos pasos si quieres implementar correctamente esta función:
- Ve a Firebase Console
- Crea un nuevo proyecto o selecciona uno existente
- Agrega una app Android:
- Nombre del paquete:
com.astronomy.stellar_view - Nombre de la app: StellarView
- Nombre del paquete:
- Descarga
google-services.json - Colócalo en la carpeta
app/
- El archivo
google-services-example.jsoncontiene datos ficticios - Funciona para compilar, pero Firebase no funcionará completamente
- Para funcionalidad completa de Firebase, usa tu archivo real
- Implementación de Arquitectura Limpia - MVVM, Repository y DI funcionando en conjunto
- Diseño con XML + View Binding - Aprende desarrollo de interfaces antes de Jetpack Compose
- Navigation Component - Arquitectura de actividad única con fragments
- Gestión de Base de Datos - Migraciones de Room, DAOs y relaciones de datos
- Integración con API - Configuración de Retrofit, manejo de errores y transformación de datos
- Carga de Imágenes - Uso de Coil para caché y optimización
- Inyección de Dependencias - Configuración y mejores prácticas con Hilt
- Imágenes Diarias de la NASA - Fotografía astronómica con explicaciones profesionales
- Aprendizaje Interactivo - Trivia sobre sistema solar, galaxias y fenómenos cósmicos
- Dificultad Progresiva - Contenido adecuado para todos los niveles
¡Las contribuciones son bienvenidas! Este proyecto es ideal para:
- Desarrolladores principiantes que deseen aprender Android
- Educadores en astronomía que quieran sumar contenido
- Entusiastas del código abierto interesados en educación científica
- 🌟 Nuevas preguntas de trivia astronómica
- 🌍 Traducciones a más idiomas
- 🎨 Mejoras de UI/UX
- 🧪 Expansión de cobertura de pruebas
- 📚 Enriquecimiento del contenido educativo
Licencia MIT
Copyright (c) 2023 Javier Fuentes
Se otorga permiso, sin costo, a cualquier persona que obtenga una copia
de este software y archivos de documentación asociados (el "Software"), para tratar
con el Software sin restricción, incluidos sin limitación los derechos a usar,
copiar, modificar, fusionar, publicar, distribuir, sublicenciar y/o vender
copias del Software, y permitir a las personas a quienes se les proporcione el
Software que lo hagan, sujeto a las siguientes condiciones:
El aviso de derechos de autor anterior y este aviso de permiso se incluirán en todas
las copias o partes sustanciales del Software.
EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O
IMPLÍCITA, INCLUYENDO PERO NO LIMITADA A LAS GARANTÍAS DE COMERCIABILIDAD,
IDONEIDAD PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES
O TITULARES DEL COPYRIGHT SERÁN RESPONSABLES POR NINGUNA RECLAMACIÓN, DAÑO U OTRA
RESPONSABILIDAD, YA SEA EN UNA ACCIÓN CONTRACTUAL, AGRAVIO O DE OTRA MANERA,
DERIVADA DE, O EN CONEXIÓN CON EL SOFTWARE O EL USO U OTRO TIPO DE ACCIONES EN
EL SOFTWARE.
Para más información sobre el autor y sus proyectos, visita http://javierfuentes.dev
Si este proyecto te ayudó a aprender sobre desarrollo Android o astronomía, considera:
Javier Fuentes - Desarrollador Android y Entusiasta de la Astronomía
- Sitio web: javierfuentes.dev
- GitHub: @JavFuentes
- Carl Sagan

