Este repositorio contiene el código backend del proyecto Libroteka, desarrollado con Django y Django REST Framework.
Aquí se gestiona la lógica del servidor, la base de datos, la autenticación y las API REST utilizadas por el frontend y la aplicación móvil.
- Python 3.8+
- Django 4.2
- Django REST Framework
- JWT
- Cloudinary
- MySQL 9+
- Autenticación y autorización
- API REST
- Books
- Users
- Orders
- Favorites
- Ratings
- Roles
- Auth
- Tokens
- Users Libroteka
- Libros
- Favoritos
- API de JWT
- Python 3.8+
- Base de datos MySQL vacía
- Clonar proyecto localmente
git clone https://github.com/ISPC-TSDW/libroteka-backend.git- Levantar una base de datos MySQL vacía
Recomendado usar Docker (docker compose ya incluido en el proyecto)
docker compose up -d --build- Ingresar al directorio del proyecto
cd libroteka-backend(Opcional) Crear el entorno virtual
python -m venv venv(Opcional) Activar el entorno virtual
.\venv\bin\activate #Windowssource venv/bin/activate #Linux- Instalar dependencias
pip install -r requirements.txt- Crear la base de datos
python manage.py migrate- Configuración archivo .env (se podrá pasar por mensajeria privada)
- Crear un archivo .env en el directorio del proyecto
- Copiar el archivo .env.example a .env
- Completar los siguientes valores:
- MYSQL_PUBLIC_URL
- DJANGO_SECRET_KEY
- CLOUDINARY_CLOUD_NAME
- CLOUDINARY_API_KEY
- CLOUDINARY_API_SECRET
- Levantar el servidor
python manage.py runserverHasta acá, el servicio backend tiene un entorno local y se puede acceder a través de la dirección http://127.0.0.1:8000/, la base de datos esta vacía y se recomienda hacer una carga inicial de datos de prueba.
Para cargar datos de prueba, se puede utilizar cuaqluier adminsitrador de base de datos (DBEaver, MySQL Workbench, etc)
- Conectarse a la base de datos
La url de la db (si se levantó con Docker) es:
mysql://root:root@localhost:3306/libroteka- Cargar datos de prueba
Se corre el script "initial_data_test.sql" en la base de datos.
Este proyecto está licenciado bajo licencia MIT.