Este proyecto es una aplicación web completa para la gestión y venta de entradas para conciertos, desarrollada con un backend en Django y un frontend en React.
El sistema permite a los usuarios comprar entradas para eventos (específicamente configurado para "Evan Craft Arica") y proporciona un panel de administración para gestionar las ventas y visualizar los tickets generados.
Para el Usuario (Público):
- Página de Inicio: Visualización atractiva con video de fondo.
- Compra de Entradas: Formulario para registrar la compra de tickets (
/comprar).
Para el Administrador:
- Login Seguro: Autenticación mediante JWT (JSON Web Tokens).
- Dashboard de Tickets: Visualización y gestión de los tickets vendidos (
/admin/tickets).
- Python 3
- Django 5.1.4: Framework web principal.
- Django REST Framework: Para la creación de la API REST.
- JWT (Simple JWT): Para autenticación segura.
- SQLite: Base de datos por defecto (fácil de configurar para desarrollo).
- CORS Headers: Para permitir la comunicación con el frontend.
- React 19: Biblioteca de UI.
- React Router Dom: Manejo de rutas.
- Bootstrap 5 & React-Bootstrap: Estilizado y componentes UI.
- Axios: Cliente HTTP para conectar con el backend.
Asegúrate de tener instalado en tu sistema:
Sigue estos pasos para poner el proyecto en marcha localmente.
git clone <URL_DEL_REPOSITORIO>
cd CompraTiketsConcertNavega a la carpeta principal del backend:
cd backendSe recomienda crear un entorno virtual para aislar las dependencias:
# Crear entorno virtual
python -m venv venv
# Activar entorno virtual
# En Windows:
venv\Scripts\activate
# En macOS/Linux:
source venv/bin/activateInstalar las dependencias (si no tienes un archivo requirements.txt, instala las principales manualmente):
pip install django djangorestframework django-cors-headers djangorestframework-simplejwtRealizar las migraciones de la base de datos:
python manage.py migrateCrear un superusuario para acceder al admin de Django:
python manage.py createsuperuserIniciar el servidor de desarrollo:
python manage.py runserverEl backend correrá en http://localhost:8000.
Abre una nueva terminal y navega a la carpeta del frontend:
cd frontendInstalar las dependencias de Node:
npm installIniciar la aplicación de React:
npm startEl frontend correrá en http://localhost:3000.
-
Backend Admin:
- Accede a
http://localhost:8000/adminpara gestionar usuarios y base de datos directamente con el panel de Django.
- Accede a
-
Aplicación Web:
- Abre
http://localhost:3000en tu navegador. - Verás la página de inicio.
- Haz clic en "Comprar Entradas" para probar el flujo de usuario.
- Haz clic en "Admin" para ingresar al panel de control (
/admin/login). Usa las credenciales que creaste concreatesuperuser(nota: asegúrate de que el frontend esté enviando las credenciales al endpoint correcto de login).
- Abre
CompraTiketsConcert/
├── backend/ # Código fuente del Backend (Django)
│ ├── api/ # Lógica de la API (Vistas, Serializers)
│ ├── backend/ # Configuraciones del proyecto (settings.py, urls.py)
│ └── manage.py # Script de gestión de Django
└── frontend/ # Código fuente del Frontend (React)
├── public/ # Archivos estáticos públicos
└── src/ # Componentes React (App.js, components/)
Creado por el equipo de desarrollo de CompraTiketsConcert.