- Primero: Lee
QUICK_START.md(5 minutos) - Luego: Ejecuta los scripts para probar
- Finalmente: Lee
RESUMEN_FINAL.mdpara entender la arquitectura
SETUP.md- Guía de instalación y deploymentCHECKLIST.md- Lista de features completadas
Documentación:
├── README.md ← Este archivo (índice)
├── QUICK_START.md ← EMPIEZA AQUÍ (paso a paso)
├── RESUMEN_FINAL.md ← Arquitectura y features
├── SETUP.md ← Instalación y deployment
└── CHECKLIST.md ← Lista de features
Scripts:
├── RUN_ALL.bat ← Inicia TODO automáticamente
├── start_server.bat ← Solo backend
└── start_web.bat ← Solo frontend (en microlearning_app/)
Backend:
├── main.py ← Servidor FastAPI
├── models.py ← Modelos de BD
├── schemas.py ← Validaciones
├── crud.py ← Operaciones DB
├── database.py ← Conexión PostgreSQL
├── requirements.txt ← Dependencias
└── auth/routes.py ← Rutas de autenticación
Frontend (Flutter):
├── lib/main.dart ← App entry point
├── lib/screens/ ← Todas las pantallas
├── lib/providers/ ← State management
├── lib/services/ ← API calls
├── lib/models/ ← Data models
├── lib/config/ ← Configuración
├── pubspec.yaml ← Dependencias
└── build/web/ ← Output compilado
cd c:\AS_microlearning_unificado-master
RUN_ALL.batTerminal 1 - Backend
cd c:\AS_microlearning_unificado-master
python -m uvicorn main:app --reload --host 0.0.0.0 --port 8000Terminal 2 - Frontend
cd c:\AS_microlearning_unificado-master\microlearning_app
flutter run -d web-server --web-port=5000http://localhost:5000
- Login/Registro
- Listar usuarios
- CRUD de videos
- CRUD de flashcards
- Sistema de likes
- Paginación
- CORS habilitado
- PostgreSQL integrado
- 5 Pantallas completas
- Navegación inferior
- Animaciones
- Conexión API
- State management
- Validaciones
- Session persistence
- Error handling
- Diseño UTP profesional
- Colores consistentes
- Responsive web/mobile
- Animaciones suaves
- Accesibilidad
| Pantalla | Estado | Acceso |
|---|---|---|
| Splash | ✅ Completa | Automática |
| Login | ✅ Completa | /login |
| Videos | ✅ Completa | Home → Tab Videos |
| Flashcards | ✅ Completa | Home → Tab Flashcards |
| Perfil | ✅ Completa | Home → Tab Perfil |
POST /login Login de usuario
POST /usuarios Registrar nuevo usuario
GET /usuarios Listar todos los usuarios
GET /videos?page=1 Listar videos
POST /videos/{id}/like Dar like a un video
GET /videos/{id} Obtener detalles de video
GET /conjuntos Listar conjuntos
GET /conjuntos/{id} Obtener detalles
GET /conjuntos/{id}/flashcards Listar flashcards
POST /conjuntos Crear conjunto
POST /flashcards Crear flashcard
DELETE /flashcards/{id} Eliminar flashcard
Azul UTP: #0A45C2 (Primario - Botones, Headers)
Azul Claro: #BFDD0FF (Secundario - Cards)
Verde: #00AA00 (Acciones - Play, Like)
Rojo: #FF0000 (Peligro - Eliminar)
Blanco: #FFFFFF (Fondo)
Gris: #F5F5F5 (Superficie)
| Servicio | URL |
|---|---|
| 🌐 App Web | http://localhost:5000 |
| 🔌 Backend API | http://localhost:8000 |
| 📖 Swagger Docs | http://localhost:8000/docs |
| 📚 ReDoc | http://localhost:8000/redoc |
$body = @{
nombre = "Test User"
correo = "test@utp.edu.pe"
contrasena = "password123"
} | ConvertTo-Json
Invoke-WebRequest -Uri "http://localhost:8000/usuarios" `
-Method POST -ContentType "application/json" -Body $body- Email:
test@utp.edu.pe - Password:
password123
netstat -ano | findstr :8000
taskkill /PID <PID> /Fflutter config --enable-web
flutter clean
flutter pub get
flutter run -d web-server --web-port=5000- Verifica que backend esté corriendo en http://localhost:8000
- Revisa http://localhost:8000/docs (debe mostrar Swagger)
- Revisa
lib/config/api_constants.dart→ baseUrl debe ser localhost:8000 - Revisa console del navegador (F12) para más detalles
- Verifica PostgreSQL URL en
database.py - Verifica que Railway está disponible
- Revisa que las credenciales sean correctas
cd microlearning_app
flutter build web --release
# Servir carpeta build/web/ con tu hostcd microlearning_app
flutter build apk --release
# Output: build/app/outputs/flutter-apk/app-release.apkcd microlearning_app
flutter build ios --release
# Abrir build/ios/Runner.xcworkspace en Xcode y archivarFrontend:
- Flutter 3.x (Web + Mobile)
- Provider (State Management)
- http (API Client)
- shared_preferences (Local Storage)
Backend:
- FastAPI 0.116.1
- SQLAlchemy (ORM)
- PostgreSQL (Database)
- Pydantic v2 (Validation)
Infrastructure:
- Railway (Hosting)
- PostgreSQL (Database)
- CORS enabled
Para información más detallada, consulta:
| Archivo | Contenido |
|---|---|
QUICK_START.md |
Cómo empezar en 5 minutos |
RESUMEN_FINAL.md |
Arquitectura del proyecto |
SETUP.md |
Instalación y configuración |
CHECKLIST.md |
Todas las features implementadas |
¿Listo para empezar?
- Lee
QUICK_START.md(5 minutos) - Ejecuta
RUN_ALL.bat - Abre http://localhost:5000
- ¡Disfruta! 🚀
- Issues: Abre un issue en GitHub
- Documentación: Consulta los archivos .md
- API Docs: http://localhost:8000/docs
Proyecto: AS Microlearning Unificado
Institución: UTP (Universidad Tecnológica del Perú)
Versión: 2.0
Última actualización: 11 de Noviembre, 2025
Estado: ✅ Listo para Producción