pablo 393b39cacd
CI / test (push) Successful in 1m56s
CI / build (push) Successful in 48s
feat: websockets
2026-07-31 14:27:50 +02:00
2026-07-24 09:14:08 +02:00
2026-07-31 14:27:50 +02:00
2026-07-31 14:27:50 +02:00
2026-03-20 10:26:24 +01:00
2026-07-23 11:37:37 +02:00
2026-07-23 16:53:16 +02:00
2026-07-23 10:46:49 +02:00
2026-07-23 11:37:37 +02:00
2024-11-23 00:24:35 +01:00
2025-02-19 15:36:41 +01:00
2026-03-05 09:53:21 +01:00
2025-05-02 08:38:57 +02:00
2026-03-05 09:53:21 +01:00
2026-03-05 09:53:21 +01:00
2026-07-23 11:37:37 +02:00
2025-05-02 08:38:57 +02:00
2026-07-31 14:27:50 +02:00
2024-05-13 12:33:09 +02:00
2025-01-31 12:50:27 +01:00
2026-03-05 09:53:21 +01:00
2026-03-20 10:30:52 +01:00
2026-07-31 14:27:50 +02:00

Shop

codecov

Desarrollo

Establecer variables de entorno

A partir del archivo .env.example, creamos un archivo .env en el que podemos establecer las variables de entorno.

Instalar dependencias

El siguiente comando instalará todas las dependencias, incluidas las necesarias para desarrollo y testing.

pip install -r requirements.test.txt

Lanzar migraciones

python manage.py migrate

Arrancar servidor

python manage.py runserver

Crear superusuario

Con este usuario tendremos control total de la aplicación desde el admin de Django

python manage.py createsuperuser

Arrancar Tailwind

tailwindcss -w -i theme/static/css/main.css -o theme/static/css/styles.css

Tareas de Celery

celery -A config worker -B -l debug

Pruebas con pytest

pytest --cov

Docker

Descarga

docker pull ghcr.io/pablo-moreno/shoppy

Construir imagen

docker build -t shoppy .

Crear contenedor

API

docker run -it --rm -p 8000:80 -e RUN_SERVER=TRUE --env-file=.env shoppy_api

Tareas en segundo plano

docker run -it --rm -p 8000:80 -e RUN_CELERY=TRUE --env-file=.env shoppy_tasks

Variables de entorno

Puedes crear un archivo .env con las siguientes variables de entorno.

Variable Default value Comments
SECRET_KEY secret key Clave de encriptación
DEBUG TRUE Modo de desarrollo activo
DATABASE_URL sqlite:///db.sqlite3 URL de conexión a base de datos
STATIC_ROOT static Carpeta de estáticos
MEDIA_ROOT media Carpeta de archivos media
REDIS_HOST redis Dirección de servidor Redis
REDIS_PORT 6379 Puerto de Redis
PAGE_SIZE 20 Tamaño de paginación
ALLOWED_HOSTS * Hosts permitidos (CORS)
CELERY_BROKER_URL redis://172.17.0.1:6379/0 Url de conexión para celery
S3_ENABLED FALSE Activado protocolo S3
S3_HOST URL de servidor S3
AWS_ACCESS_KEY_ID Clave de acceso de S3
AWS_SECRET_ACCESS_KEY Clave secreta de S3
AWS_STORAGE_BUCKET_NAME Nombre del bucket de S3
AWS_S3_ENDPOINT_URL Endpoint de S3

Depurar pagos TPV con Redsys

Para poder usar el TPV en la máquina local necesitaremos instalar y configurar ngrok, siguiendo los pasos que nos indican en la web al crear nuestra cuenta

Arrancaremos ngrok con el siguiente comando:

ngrok http http://localhost:8000

Ngrok nos dará una URL accesible desde fuera, que tendremos que guardar en los Ajustes de la tienda como Dominio del TPV

Tendremos que establecer también los siguientes ajustes de la cuenta con estos valores para desarrollo.

Variable Valor para desarrollo Descripción
redsys_shared_secret sq7HjrUOBfKmC576ILgskD5srU870gJ7 Clave privada de Redsys
merchant_code 999008881 Código de negocio de Redsys
terminal 001 Terminal de Redsys
currency_code 978 Código de moneda de Redsys
tpv_domain Dominio del TPV para redirección de Redsys (en local lo obtenemos por ngrok)
S
Description
No description provided
Readme 1,010 KiB
Languages
JavaScript 40.7%
Python 37.8%
HTML 12.3%
CSS 9%