Aplicación web educativa modular (React + TypeScript + Vite + Tailwind + Framer Motion + Three.js opcional + Recharts) para explorar parámetros de hábitats extraplanetarios comenzando con Marte y la Luna.
- Landing con Hero animado.
- Listado de planetas (Mars, Moon).
- Detalle de planeta con pestañas.
- Módulos dinámicos: Calculadora de Peso y Estimador Energético.
- Utilidades físicas con tests (>=80% coverage en utils esperado).
- Arquitectura extensible para nuevos planetas y módulos.
- React 18 + TypeScript + Vite
- Tailwind CSS
- Framer Motion (animaciones)
- Three.js + @react-three/fiber + drei (visualizaciones 3D futuras)
- Recharts (gráficas)
- Jest + React Testing Library
- ESLint + Prettier
- GitHub Actions CI
npm install
npm run dev # entorno desarrollo
npm run build # build producción
npm run preview # preview local
npm run lint # lint
npm run test # tests con coverage
npm run typecheck # verificación TS
- Crear proyecto nuevo apuntando al repo.
- Framework: Vite. Build command:
npm run build
. Output:dist
. - Variables de entorno (si se añaden APIs) en panel de Vercel.
src/
components/
pages/
modules/
data/
utils/
hooks/
services/
styles/
assets/
- Editar
src/data/planets.json
y añadir un objeto con campos:id, name, slug, radius_m, mass_kg, surface_gravity_m_s2, mean_temp_c, atmosphere, description, image (ruta)
. - Asegurar imagen en
public/assets/
o CDN. - (Opcional) Actualizar documentación y referencias.
- Crear carpeta en
src/modules/<nuevo>
y exportar componente<NuevoModule>.tsx
. - Añadir entrada a
src/modules/config/modules.ts
conid, title, componentPath
(ruta relativa respecto al archivo config usando..
). - Incluir tests si el módulo introduce lógica adicional.
- Peso: F = m * g.
- Transferencia de Hohmann: vis-viva y Δv (referencia: Bate, Mueller & White - Fundamentals of Astrodynamics).
- Estimador Energético:
Q = U * A * ΔT
(simplificado). Área~ k * V^(2/3)
(heurística). - Radiación: modelo exponencial simplificado
D = D0 * exp(-μ * ρ * x)
(educativo, no usar para diseño real). - Datos planetarios: NASA Planetary Fact Sheets (https://nssdc.gsfc.nasa.gov/planetary/factsheet/).
Este proyecto es educativo. Los modelos físicos están simplificados y NO deben utilizarse para ingeniería real.
- Más módulos: simulador de transferencia (visual), calculadora de escudo de radiación interactiva, órbitas 3D.
- Integración NASA APIs.
- Internacionalización i18n.
- Persistencia local de configuraciones.
MIT