Una aplicación web moderna y minimalista desarrollada con Flask para gestionar y seguir tu colección personal de películas. Este proyecto demuestra una arquitectura limpia separando rutas, servicios y lógica de base de datos.
- Gestión Completa (CRUD):
- Añade nuevas películas con título y género.
- Elimina películas de tu lista fácilmente.
- Seguimiento de Progreso:
- Marca películas como "vistas" con un solo clic.
- Sistema de Calificación:
- Asigna puntuaciones del 1 al 10 a las películas que ya has visto.
- Interfaz de Usuario:
- Diseño responsivo y oscuro optimizado para una excelente experiencia de visualización.
- Basado en plantillas Jinja2 y CSS puro.
- Backend: Flask
- Base de Datos: SQLite3
- Frontend: HTML5, CSS3, Jinja2
- Testing: Pytest (en desarrollo)
- Python 3.8+
- pip (gestor de paquetes de Python)
-
Clonar el repositorio:
git clone <url-del-repositorio> cd Proyecto-Flask-Python
-
Entorno Virtual:
# Crear el entorno python3 -m venv .venv # Activarlo source .venv/bin/activate # En Linux/macOS # .venv\Scripts\activate # En Windows
-
Dependencias:
pip install -r requirements.txt
-
Base de Datos (Opcional - La app la usa directamente): Si deseas reiniciar la base de datos con datos de prueba:
python seed.py
Inicia el servidor de desarrollo:
python app.pyLa aplicación estará disponible en: http://127.0.0.1:5000
├── app.py # Punto de entrada de la aplicación
├── routes/ # Definición de Blueprints y rutas
│ └── peliculas.py # Rutas relacionadas con películas
├── services/ # Lógica de negocio e interacción DB
│ └── peliculas_service.py
├── templates/ # Plantillas HTML (Jinja2)
├── static/ # Archivos estáticos (CSS/JS)
├── tests/ # Pruebas automatizadas
├── schema.sql # Definición de la estructura de la DB
├── seed.py # Script para poblar la DB con datos iniciales
└── requirements.txt # Dependencias del proyecto
Para ejecutar la suite de pruebas (actualmente en desarrollo):
pytestDesarrollado como proyecto de aprendizaje para Flask y Python.