Este proyecto es una API RESTful construida con FastAPI y SQLAlchemy, que utiliza una base de datos SQLite para manejar operaciones CRUD (Crear, Leer, Actualizar y Eliminar) de ítems.
Asegúrate de tener instalados los siguientes componentes antes de ejecutar el proyecto:
- Python 3.7 o superior
- pip (el gestor de paquetes de Python)
- jq (una utilidad para manipular datos JSON
OPCIONAL
, ya que se pueden pasar los datos de a uno para poblar la base)
- Windows:
- Usar winget:
winget install jqlang.jq
- Usar scoop:
scoop install jq
- Usar Chocolatey:
choco install jq
- Usar winget:
- Linux/macOS:
- Usar apt (Debian/Ubuntu):
sudo apt-get install jq
- Usar brew (macOS):
brew install jq
- Usar apt (Debian/Ubuntu):
Clona este repositorio en tu máquina local:
https://github.com/Carlos-maldonado578/api_fast.git
cd api_fast
En Linux/macOS:
python3 -m venv venv
source venv/bin/activate
En Windows:
python -m venv venv
.\venv\Scripts\activate
En Windows con git Bash:
python -m venv venv
source venv/Scripts/activate
pip install -r requirements.txt
Una vez instaladas las dependencias, puedes levantar el servidor usando Uvicorn:
uvicorn app.main:app --reload
Asegúrate de que el archivo populate_db.sh sea ejecutable:
chmod +x populate_db.sh
Luego, puedes ejecutar el script:
./populate_db.sh
El servidor estará corriendo en http://127.0.0.1:8000
FastAPI genera documentación automática basada en OpenAPI. Puedes acceder a la interfaz gráfica de la documentación en:
Swagger UI: http://127.0.0.1:8000/docs