Este tutorial te guiará a través de los pasos necesarios para preparar tu PC, cubriremos la instalación de Python 3.10 y FastAPI.
Para utilizar FastAPI debes contar con un entorno controlado, esto se refiere a que vas a crear un entorno para asegurar estabilidad y reproducibilidad de tu código.
1. Descargar Python 3.10:
- Ve a la página oficial de descargas de Python: Python.org
- Descarga el instalador correspondiente a tu sistema operativo (Windows, macOS o Linux).
2. Instalar Python 3.10:
- Ejecuta el instalador que descargaste.
- Asegúrate de marcar la opción "Add Python to PATH" antes de continuar con la instalación.
- Sigue las instrucciones del instalador para completar la instalación.
1. Crear un entorno virtual:
- Abre una terminal.
- Usando
cd
navega al directorio donde deseas crear tu proyecto. - Ejecuta los siguientes comandos:
# Crear un entorno virtual
python -m venv venv
# Activar el entorno virtual
# En Windows
venv\Scripts\activate
# En macOS/Linux
source venv/bin/activate
2. Instalar FastAPI:
Con el entorno virtual activado, ejecuta:
pip install fastapi
Abre main.py
en tu editor de texto favorito y añade el siguiente código:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello World"}
Puedes ver la información en el archivo main.py
.
Algunos editores de texto que te recomendamos:
- Visual Studio Code (VS Code)
- PyCharm
Ahora vamos a correr la aplicación. Abre una terminal y ejecuta:
fastapi dev <ruta_del_archivo_main.py>
Esto iniciará el servidor y podrás ver la salida en la terminal:
Abre tu navegador y ve a http://127.0.0.1:8000. Deberías ver un mensaje de respuesta en formato JSON que dice:
{"message": "Hola Mundo"}
Además, FastAPI genera automáticamente documentación interactiva para tu API. Puedes acceder a ella en:
Documentación Swagger UI: http://127.0.0.1:8000/docs
Esta es una interfaz interactiva que se genera automáticamente para explorar y probar las endpoints de la API directamente desde tu navegador. Puedes personalizarla cambiando el título, la descripción y otros detalles de la documentación.
Permite ver todos los endpoints disponibles en la API, junto con sus métodos HTTP (GET, POST, PUT, DELETE, etc.), parámetros, y descripciones.
Swagger UI utiliza OpenAPI (antes se llamaba swagger), una especificación para describir y documentar APIs de manera detallada y estandarizada, todo este proceso de forma automática. OpenAPI se ha convertido en el estándar de facto para la descripción de APIs REST.
Documentación ReDoc: http://127.0.0.1:8000/redoc
Al igual que la documentación Swagger UI, la documentación ReDoc se genera automáticamente en FastAPI y proporciona una manera interactiva para explorar y probar las endpoints de tu API. Es solamente una alternativa visualmente diferente a Swagger UI.
Redoc es compatible con la especificación OpenAPI, lo que significa que puede interpretar y mostrar las especificaciones OpenAPI de tu API de manera clara y precisa.
¡Y eso es todo! Ahora tienes una aplicación básica de FastAPI que devuelve un mensaje "Hola Mundo".
Puedes expandir esta aplicación añadiendo más rutas y funcionalidades siguiendo los modulos de este repositorio:
- Módulos básicos: M 3, M 4
- Módulos intermedios: M 5, M 6, M 7
- Módulos avanzados: M 8, M 9
- Módulos extra: ME 10, ME 11
Puedes guardar las dependencias como fastapi
y otras en un archivo requirements.txt
con sus versiones para que puedas instalarlas fácilmente, y actualizar las versiones controladamente.
El archivo podría contener algo como:
fastapi==0.111.0
sqlmodel==0.0.19
Luego de activar tu entorno virtual, puedes instalar todas las dependencias con:
pip install -r requirements.txt
Si quieres saber más puedes dirigirte a la documentación oficial de FastAPI.