Skip to content

Marcial-Godes/Users_API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Users API

Python FastAPI Tests Status

API REST desarrollada con Python y FastAPI como proyecto personal para consolidar fundamentos de desarrollo backend.

Proyecto centrado en la gestión de usuarios, con operaciones CRUD, validación de datos y tests automatizados, aplicando una estructura clara y buenas prácticas básicas de diseño de APIs.


🚀 Funcionalidades

  • Creación de usuarios
  • Listado de usuarios
  • Obtención de usuario por ID
  • Eliminación de usuarios
  • Validación de datos con Pydantic
  • Persistencia en memoria (fake database)
  • Tests automatizados con pytest
  • Documentación automática con Swagger UI

🗂️ Estructura del proyecto

Users_API/
├── main.py
├── routers/
│   └── users.py
├── models/
│   └── user.py
├── db/
│   └── fake_db.py
├── tests/
│   └── test_users.py
├── requirements.txt
└── README.md

La persistencia se realiza mediante una base de datos en memoria (fake_db.py) con fines formativos.


🛠️ Tecnologías utilizadas

  • Python
  • FastAPI
  • Pydantic
  • Pytest
  • Uvicorn

▶️ Ejecución en local

1️⃣ Clonar el repositorio

git clone https://github.com/Marcial-Godes/Users_API.git
cd Users_API

2️⃣ Crear y activar entorno virtual

python -m venv venv

Windows

venv\Scripts\activate

Linux / macOS

source venv/bin/activate

3️⃣ Instalar dependencias

pip install -r requirements.txt

4️⃣ Ejecutar la API

uvicorn main:app --reload

La API estará disponible en:

http://127.0.0.1:8000

Swagger UI:

http://127.0.0.1:8000/docs

🧪 Tests

Tests implementados con pytest.

Ejecutar tests:

pytest

Casos cubiertos:

  • Creación de usuarios

  • Listado de usuarios

  • Eliminación de usuarios

  • Respuestas HTTP correctas


🎯 Objetivo del proyecto

Proyecto con fines formativos, orientado a practicar:

Diseño de APIs REST

Organización de proyectos backend

Validación de datos

Testing automatizado básico

Uso de FastAPI en un contexto realista

No orientado a producción.

About

FastAPI REST API for user management (learning project)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages