Backend del juego de ajedrez creado por @samuelwayne e @ismola
Proyecto padre: https://github.com/Ismola/chess_game_app
- Python
- Flask
Note
En esta fase se puede conseguir un ajedrez, multijugador local
- Endpoint para obtener posibles movimientos de una ficha
- Definir estructura del objeto tablero
- Definir estructura del envío de informacion entre cliente y servidor
Saber como quieres que te envíen los datos desde el cliente y como se los vas a devolver. Tiene que ser un json en ambos casos
- Definir funciones de movimiento por cada pieza
- Primero otorgar el movimiento básico de la pieza dentro de los límites del tablero, sin tener en cuenta otras piezas ni movimientos excepcionales (primer movimientos de peones, enroques, comer, etc)
- Tener en cuenta otras piezas
- Cuando son del mismo color
- Cuando son de distinto color (comer)
- Movimientos excepcionales
- Elegir tecnología
- ✅ DevContainers
- Pintar
Warning
¿Le meto 3D o 2D?
Note
En esta fase se despliega a internet
- Dockerizar backend
- Front en netlify con subdominio.ismola.dev
Warning
Elegir o dominio o subdominio
- Backend, en algun servidor(v1) o algún sitio que desplieguen imagenes de docker gratis
Note
En esta fase se crea el modo online. La comunicacion entre jugadores será a traves de websocket pasando por servidor, que guarda el movimiento en la base de datos. Además, desde cualquier dispositivo se podrá seguir la partida a traves de un link.
- Meter websockets
- Guardar id de partida en DB, junto con el websocket.id de blancas y websocket.id de negras
- Guardar en DB tablero, e historial de partidas
- Definir modelo de DB
- Comunicacion con websocket
- Cookies
We use a module named virtualenv which is a tool to create isolated Python environments. Virtualenv creates a folder that contains all the necessary executables to use the packages that a Python project would need.
python3 -m venv <whatever_virtual_environment_name>source <whatever_virtual_environment_name>/bin/activate # for Unix/Linux
.\<whatever_virtual_environment_name>\Scripts\activate # for Windowspip install -r requirements.txt # Works for both Unix/Linux and Windowspython3 main.py # for Unix/Linux
python main.py # for WindowsNow, the server is accessible at http://localhost3000
-
The first thing is to add your .env file. You can add a invented bearer token to get started
-
Then configure the base url in the utils/config.py file
-
In order to work on your project, you must add an endpoint to main.py.
-
Next, create a controller, and add the different web actions on the controller. It is recommended to do actions with few steps, to be able to modularize your code, and not repeat code in the future.

