diff --git a/docs/es/docs/alternatives.md b/docs/es/docs/alternatives.md index cc9309dd2f..aada9e2d8a 100644 --- a/docs/es/docs/alternatives.md +++ b/docs/es/docs/alternatives.md @@ -223,7 +223,7 @@ Usarlo llevó a la creación de varios generadores de full-stack para Flask. Est * https://github.com/tiangolo/full-stack-flask-couchbase * https://github.com/tiangolo/full-stack-flask-couchdb -Y estos mismos generadores de full-stack fueron la base de los [Generadores de Proyectos **FastAPI**](project-generation.md){.internal-link target=_blank}. +Y estos mismos generadores de full-stack fueron la base de los [Generadores de Proyectos **FastAPI**](project-generation.md). /// info | Información @@ -433,7 +433,7 @@ Tiene: * CORS, GZip, Archivos estáticos, Responses en streaming. * Soporte para sesiones y cookies. * Cobertura de tests del 100%. -* Base de código 100% tipada. +* code base 100% tipada. * Pocas dependencias obligatorias. Starlette es actualmente el framework de Python más rápido probado. Solo superado por Uvicorn, que no es un framework, sino un servidor. @@ -476,10 +476,10 @@ El servidor web principal para ejecutar aplicaciones **FastAPI**. También puedes usar la opción de línea de comandos `--workers` para tener un servidor multiproceso asíncrono. -Revisa más detalles en la sección [Despliegue](deployment/index.md){.internal-link target=_blank}. +Revisa más detalles en la sección [Despliegue](deployment/index.md). /// ## Benchmarks y velocidad { #benchmarks-and-speed } -Para entender, comparar, y ver la diferencia entre Uvicorn, Starlette y FastAPI, revisa la sección sobre [Benchmarks](benchmarks.md){.internal-link target=_blank}. +Para entender, comparar, y ver la diferencia entre Uvicorn, Starlette y FastAPI, revisa la sección sobre [Benchmarks](benchmarks.md). diff --git a/docs/es/docs/async.md b/docs/es/docs/async.md index a06d3e979d..a8ed00df12 100644 --- a/docs/es/docs/async.md +++ b/docs/es/docs/async.md @@ -141,7 +141,7 @@ Tú y tu crush comen las hamburguesas y pasan un buen rato. ✨ /// info | Información -Hermosas ilustraciones de Ketrina Thompson. 🎨 +Hermosas ilustraciones de [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨 /// @@ -207,7 +207,7 @@ No hubo mucho hablar o coquetear ya que la mayor parte del tiempo se dedicó a e /// info | Información -Hermosas ilustraciones de Ketrina Thompson. 🎨 +Hermosas ilustraciones de [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨 /// @@ -251,7 +251,7 @@ Este tipo de asincronía es lo que hizo popular a NodeJS (aunque NodeJS no es pa Y ese es el mismo nivel de rendimiento que obtienes con **FastAPI**. -Y como puedes tener paralelismo y asincronía al mismo tiempo, obtienes un mayor rendimiento que la mayoría de los frameworks de NodeJS probados y a la par con Go, que es un lenguaje compilado más cercano a C (todo gracias a Starlette). +Y como puedes tener paralelismo y asincronía al mismo tiempo, obtienes un mayor rendimiento que la mayoría de los frameworks de NodeJS probados y a la par con Go, que es un lenguaje compilado más cercano a C [(todo gracias a Starlette)](https://www.techempower.com/benchmarks/#section=data-r17&hw=ph&test=query&l=zijmkf-1). ### ¿Es la concurrencia mejor que el paralelismo? { #is-concurrency-better-than-parallelism } @@ -298,7 +298,7 @@ Pero también puedes explotar los beneficios del paralelismo y la multiprocesami Eso, más el simple hecho de que Python es el lenguaje principal para **Data Science**, Machine Learning y especialmente Deep Learning, hacen de FastAPI una muy buena opción para APIs web de Data Science / Machine Learning y aplicaciones (entre muchas otras). -Para ver cómo lograr este paralelismo en producción, consulta la sección sobre [Deployment](deployment/index.md){.internal-link target=_blank}. +Para ver cómo lograr este paralelismo en producción, consulta la sección sobre [Despliegue](deployment/index.md). ## `async` y `await` { #async-and-await } @@ -363,13 +363,13 @@ Pero si deseas usar `async` / `await` sin FastAPI, también puedes hacerlo. ### Escribe tu propio código async { #write-your-own-async-code } -Starlette (y **FastAPI**) están basados en AnyIO, lo que lo hace compatible tanto con el asyncio del paquete estándar de Python como con Trio. +Starlette (y **FastAPI**) están basados en [AnyIO](https://anyio.readthedocs.io/en/stable/), lo que lo hace compatible tanto con el [asyncio](https://docs.python.org/3/library/asyncio-task.html) del paquete estándar de Python como con [Trio](https://trio.readthedocs.io/en/stable/). -En particular, puedes usar directamente AnyIO para tus casos de uso avanzados de concurrencia que requieran patrones más avanzados en tu propio código. +En particular, puedes usar directamente [AnyIO](https://anyio.readthedocs.io/en/stable/) para tus casos de uso avanzados de concurrencia que requieran patrones más avanzados en tu propio código. -E incluso si no estuvieras usando FastAPI, también podrías escribir tus propias aplicaciones asíncronas con AnyIO para ser altamente compatibles y obtener sus beneficios (p.ej. *concurrencia estructurada*). +E incluso si no estuvieras usando FastAPI, también podrías escribir tus propias aplicaciones asíncronas con [AnyIO](https://anyio.readthedocs.io/en/stable/) para ser altamente compatibles y obtener sus beneficios (p.ej. *concurrencia estructurada*). -Creé otro paquete sobre AnyIO, como una capa delgada, para mejorar un poco las anotaciones de tipos y obtener mejor **autocompletado**, **errores en línea**, etc. También tiene una introducción amigable y tutorial para ayudarte a **entender** y escribir **tu propio código async**: Asyncer. Sería particularmente útil si necesitas **combinar código async con regular** (bloqueante/sincrónico). +Creé otro paquete sobre AnyIO, como una capa delgada, para mejorar un poco las anotaciones de tipos y obtener mejor **autocompletado**, **errores en línea**, etc. También tiene una introducción amigable y tutorial para ayudarte a **entender** y escribir **tu propio código async**: [Asyncer](https://asyncer.tiangolo.com/). Sería particularmente útil si necesitas **combinar código async con regular** (bloqueante/sincrónico). ### Otras formas de código asíncrono { #other-forms-of-asynchronous-code } @@ -381,7 +381,7 @@ Esta misma sintaxis (o casi idéntica) también se incluyó recientemente en las Pero antes de eso, manejar el código asíncrono era mucho más complejo y difícil. -En versiones previas de Python, podrías haber usado hilos o Gevent. Pero el código es mucho más complejo de entender, depurar y razonar. +En versiones previas de Python, podrías haber usado hilos o [Gevent](https://www.gevent.org/). Pero el código es mucho más complejo de entender, depurar y razonar. En versiones previas de NodeJS / JavaScript en el Navegador, habrías usado "callbacks". Lo que lleva al "callback hell". @@ -407,7 +407,7 @@ Todo eso es lo que impulsa FastAPI (a través de Starlette) y lo que hace que te Probablemente puedas saltarte esto. -Estos son detalles muy técnicos de cómo funciona **FastAPI** en su interior. +Estos son detalles muy técnicos de cómo **FastAPI** funciona en su interior. Si tienes bastante conocimiento técnico (coroutines, hilos, bloqueo, etc.) y tienes curiosidad sobre cómo FastAPI maneja `async def` vs `def` normal, adelante. @@ -419,15 +419,15 @@ Cuando declaras una *path operation function* con `def` normal en lugar de `asyn Si vienes de otro framework async que no funciona de la manera descrita anteriormente y estás acostumbrado a definir funciones de *path operation* solo de cómputo trivial con `def` normal para una pequeña ganancia de rendimiento (alrededor de 100 nanosegundos), ten en cuenta que en **FastAPI** el efecto sería bastante opuesto. En estos casos, es mejor usar `async def` a menos que tus *path operation functions* usen código que realice I/O de bloqueo. -Aun así, en ambas situaciones, es probable que **FastAPI** [siga siendo más rápida](index.md#performance){.internal-link target=_blank} que (o al menos comparable a) tu framework anterior. +Aun así, en ambas situaciones, es probable que **FastAPI** [siga siendo más rápida](index.md#performance) que (o al menos comparable a) tu framework anterior. ### Dependencias { #dependencies } -Lo mismo aplica para las [dependencias](tutorial/dependencies/index.md){.internal-link target=_blank}. Si una dependencia es una función estándar `def` en lugar de `async def`, se ejecuta en el threadpool externo. +Lo mismo aplica para las [dependencias](tutorial/dependencies/index.md). Si una dependencia es una función estándar `def` en lugar de `async def`, se ejecuta en el threadpool externo. ### Sub-dependencias { #sub-dependencies } -Puedes tener múltiples dependencias y [sub-dependencias](tutorial/dependencies/sub-dependencies.md){.internal-link target=_blank} requiriéndose mutuamente (como parámetros de las definiciones de funciones), algunas de ellas podrían ser creadas con `async def` y algunas con `def` normal. Aun funcionará, y las que fueron creadas con `def` normal serían llamadas en un hilo externo (del threadpool) en lugar de ser "awaited". +Puedes tener múltiples dependencias y [sub-dependencias](tutorial/dependencies/sub-dependencies.md) requiriéndose mutuamente (como parámetros de las definiciones de funciones), algunas de ellas podrían ser creadas con `async def` y algunas con `def` normal. Aun funcionará, y las que fueron creadas con `def` normal serían llamadas en un hilo externo (del threadpool) en lugar de ser "awaited". ### Otras funciones de utilidad { #other-utility-functions } diff --git a/docs/es/docs/benchmarks.md b/docs/es/docs/benchmarks.md index e6f8f99647..040dc58129 100644 --- a/docs/es/docs/benchmarks.md +++ b/docs/es/docs/benchmarks.md @@ -1,6 +1,6 @@ # Benchmarks { #benchmarks } -Los benchmarks independientes de TechEmpower muestran aplicaciones de **FastAPI** ejecutándose bajo Uvicorn como uno de los frameworks de Python más rápidos disponibles, solo por debajo de Starlette y Uvicorn en sí mismos (utilizados internamente por FastAPI). +Los benchmarks independientes de TechEmpower muestran aplicaciones de **FastAPI** ejecutándose bajo Uvicorn como [uno de los frameworks de Python más rápidos disponibles](https://www.techempower.com/benchmarks/#section=test&runid=7464e520-0dc2-473d-bd34-dbdfd7e85911&hw=ph&test=query&l=zijzen-7), solo por debajo de Starlette y Uvicorn en sí mismos (utilizados internamente por FastAPI). Pero al revisar benchmarks y comparaciones, debes tener en cuenta lo siguiente. diff --git a/docs/es/docs/fastapi-cli.md b/docs/es/docs/fastapi-cli.md index 7866254223..e8d6ad6c80 100644 --- a/docs/es/docs/fastapi-cli.md +++ b/docs/es/docs/fastapi-cli.md @@ -1,15 +1,15 @@ # FastAPI CLI { #fastapi-cli } -**FastAPI CLI** es un programa de línea de comandos que puedes usar para servir tu aplicación FastAPI, gestionar tu proyecto FastAPI, y más. +**FastAPI CLI** es un programa de línea de comandos que puedes usar para servir tu aplicación FastAPI, gestionar tu proyecto FastAPI, y más. -Cuando instalas FastAPI (por ejemplo, con `pip install "fastapi[standard]"`), incluye un paquete llamado `fastapi-cli`, este paquete proporciona el comando `fastapi` en la terminal. +Cuando instalas FastAPI (por ejemplo, con `pip install "fastapi[standard]"`), viene con un programa de línea de comandos que puedes ejecutar en la terminal. Para ejecutar tu aplicación FastAPI en modo de desarrollo, puedes usar el comando `fastapi dev`:
@@ -44,7 +44,7 @@ Luego pasé algún tiempo diseñando la "API" de desarrollador que quería tener Probé varias ideas en los editores de Python más populares: PyCharm, VS Code, editores basados en Jedi. -Según la última Encuesta de Desarrolladores de Python, estos editores cubren alrededor del 80% de los usuarios. +Según la última [Encuesta de Desarrolladores de Python](https://www.jetbrains.com/research/python-developers-survey-2018/#development-tools), estos editores cubren alrededor del 80% de los usuarios. Esto significa que **FastAPI** fue específicamente probado con los editores usados por el 80% de los desarrolladores de Python. Y como la mayoría de los otros editores tienden a funcionar de manera similar, todos sus beneficios deberían funcionar prácticamente para todos los editores. @@ -54,11 +54,11 @@ Todo de una manera que proporcionara la mejor experiencia de desarrollo para tod ## Requisitos { #requirements } -Después de probar varias alternativas, decidí que iba a usar **Pydantic** por sus ventajas. +Después de probar varias alternativas, decidí que iba a usar [**Pydantic**](https://docs.pydantic.dev/) por sus ventajas. Luego contribuí a este, para hacerlo totalmente compatible con JSON Schema, para soportar diferentes maneras de definir declaraciones de restricciones, y para mejorar el soporte de los editores (chequeo de tipos, autocompletado) basado en las pruebas en varios editores. -Durante el desarrollo, también contribuí a **Starlette**, el otro requisito clave. +Durante el desarrollo, también contribuí a [**Starlette**](https://www.starlette.dev/), el otro requisito clave. ## Desarrollo { #development } @@ -76,4 +76,4 @@ Pero aún así, hay muchas mejoras y funcionalidades por venir. **FastAPI** tiene un gran futuro por delante. -Y [tu ayuda](help-fastapi.md){.internal-link target=_blank} es muy apreciada. +Y [tu ayuda](help-fastapi.md) es muy apreciada. diff --git a/docs/es/docs/index.md b/docs/es/docs/index.md index 0544eb9ba4..6aea221427 100644 --- a/docs/es/docs/index.md +++ b/docs/es/docs/index.md @@ -11,25 +11,25 @@ FastAPI framework, alto rendimiento, fácil de aprender, rápido de programar, listo para producción --- -**Documentación**: https://fastapi.tiangolo.com +**Documentación**: [https://fastapi.tiangolo.com](https://fastapi.tiangolo.com/es) -**Código Fuente**: https://github.com/fastapi/fastapi +**Código Fuente**: [https://github.com/fastapi/fastapi](https://github.com/fastapi/fastapi) --- @@ -40,11 +40,11 @@ Las funcionalidades clave son: * **Rápido**: Muy alto rendimiento, a la par con **NodeJS** y **Go** (gracias a Starlette y Pydantic). [Uno de los frameworks Python más rápidos disponibles](#performance). * **Rápido de programar**: Aumenta la velocidad para desarrollar funcionalidades en aproximadamente un 200% a 300%. * * **Menos bugs**: Reduce en aproximadamente un 40% los errores inducidos por humanos (desarrolladores). * -* **Intuitivo**: Gran soporte para editores. Autocompletado en todas partes. Menos tiempo depurando. +* **Intuitivo**: Gran soporte para editores. Autocompletado en todas partes. Menos tiempo depurando. * **Fácil**: Diseñado para ser fácil de usar y aprender. Menos tiempo leyendo documentación. * **Corto**: Minimiza la duplicación de código. Múltiples funcionalidades desde cada declaración de parámetro. Menos bugs. * **Robusto**: Obtén código listo para producción. Con documentación interactiva automática. -* **Basado en estándares**: Basado (y completamente compatible) con los estándares abiertos para APIs: OpenAPI (anteriormente conocido como Swagger) y JSON Schema. +* **Basado en estándares**: Basado (y completamente compatible) con los estándares abiertos para APIs: [OpenAPI](https://github.com/OAI/OpenAPI-Specification) (anteriormente conocido como Swagger) y [JSON Schema](https://json-schema.org/). * estimación basada en pruebas con un equipo de desarrollo interno, construyendo aplicaciones de producción. @@ -55,51 +55,51 @@ Las funcionalidades clave son: ### Sponsor Keystone { #keystone-sponsor } {% for sponsor in sponsors.keystone -%} -+
{% endfor -%} ### Sponsors Oro y Plata { #gold-and-silver-sponsors } {% for sponsor in sponsors.gold -%} -
+
{% endfor -%} {%- for sponsor in sponsors.silver -%} -
+
{% endfor %} -Otros sponsors +[Otros sponsors](https://fastapi.tiangolo.com/es/fastapi-people/#sponsors) ## Opiniones { #opinions } "_[...] Estoy usando **FastAPI** un montón estos días. [...] De hecho, estoy planeando usarlo para todos los servicios de **ML de mi equipo en Microsoft**. Algunos de ellos se están integrando en el núcleo del producto **Windows** y algunos productos de **Office**._" -
Kabir Khan - Microsoft (ref)+Kabir Khan - Microsoft (ref)--- "_Adoptamos el paquete **FastAPI** para crear un servidor **REST** que pueda ser consultado para obtener **predicciones**. [para Ludwig]_" -Piero Molino, Yaroslav Dudin, y Sai Sumanth Miryala - Uber (ref)+Piero Molino, Yaroslav Dudin, y Sai Sumanth Miryala - Uber (ref)--- "_**Netflix** se complace en anunciar el lanzamiento de código abierto de nuestro framework de orquestación de **gestión de crisis**: **Dispatch**! [construido con **FastAPI**]_" -Kevin Glisson, Marc Vilanova, Forest Monsen - Netflix (ref)+Kevin Glisson, Marc Vilanova, Forest Monsen - Netflix (ref)--- "_Estoy súper emocionado con **FastAPI**. ¡Es tan divertido!_" -Brian Okken - Python Bytes host del podcast (ref)+Brian Okken - [Python Bytes](https://pythonbytes.fm/episodes/show/123/time-to-right-the-py-wrongs?time_in_sec=855) host del podcast (ref)--- "_Honestamente, lo que has construido parece súper sólido y pulido. En muchos aspectos, es lo que quería que **Hug** fuera; es realmente inspirador ver a alguien construir eso._" - +Timothy Crosley - [Hug](https://github.com/hugapi/hug) creador (ref)--- @@ -107,27 +107,27 @@ Las funcionalidades clave son: "_Nos hemos cambiado a **FastAPI** para nuestras **APIs** [...] Creo que te gustará [...]_" - +Ines Montani - Matthew Honnibal - [fundadores de Explosion AI](https://explosion.ai) - [creadores de spaCy](https://spacy.io) (ref) - (ref)--- "_Si alguien está buscando construir una API de Python para producción, altamente recomendaría **FastAPI**. Está **hermosamente diseñado**, es **simple de usar** y **altamente escalable**, se ha convertido en un **componente clave** en nuestra estrategia de desarrollo API primero y está impulsando muchas automatizaciones y servicios como nuestro Ingeniero Virtual TAC._" -Deon Pillsbury - Cisco (ref)+Deon Pillsbury - Cisco (ref)--- ## Mini documental de FastAPI { #fastapi-mini-documentary } -Hay un mini documental de FastAPI lanzado a finales de 2025, puedes verlo online: +Hay un [mini documental de FastAPI](https://www.youtube.com/watch?v=mpR8ngthqiE) lanzado a finales de 2025, puedes verlo online: -+
## **Typer**, el FastAPI de las CLIs { #typer-the-fastapi-of-clis } -
+
-Si estás construyendo una aplicación de CLI para ser usada en la terminal en lugar de una API web, revisa **Typer**. +Si estás construyendo una aplicación de CLI para ser usada en la terminal en lugar de una API web, revisa [**Typer**](https://typer.tiangolo.com/). **Typer** es el hermano pequeño de FastAPI. Y está destinado a ser el **FastAPI de las CLIs**. ⌨️ 🚀 @@ -135,12 +135,12 @@ Si estás construyendo una aplicación de Starlette para las partes web. -* Pydantic para las partes de datos. +* [Starlette](https://www.starlette.dev/) para las partes web. +* [Pydantic](https://docs.pydantic.dev/) para las partes de datos. ## Instalación { #installation } -Crea y activa un entorno virtual y luego instala FastAPI: +Crea y activa un [entorno virtual](https://fastapi.tiangolo.com/es/virtual-environments/) y luego instala FastAPI:
@@ -199,7 +199,7 @@ async def read_item(item_id: int, q: str | None = None): **Nota**: -Si no lo sabes, revisa la sección _"¿Con prisa?"_ sobre `async` y `await` en la documentación. +Si no lo sabes, revisa la sección _"¿Con prisa?"_ sobre [`async` y `await` en la documentación](https://fastapi.tiangolo.com/es/async/#in-a-hurry). @@ -210,7 +210,7 @@ Corre el servidor con:```console -$ fastapi dev main.py +$ fastapi dev ╭────────── FastAPI CLI - Development mode ───────────╮ │ │ @@ -235,19 +235,19 @@ INFO: Application startup complete.-### Revísalo { #check-it } -Abre tu navegador en http://127.0.0.1:8000/items/5?q=somequery. +Abre tu navegador en [http://127.0.0.1:8000/items/5?q=somequery](http://127.0.0.1:8000/items/5?q=somequery). Verás el response JSON como: @@ -264,17 +264,17 @@ Ya creaste una API que: ### Documentación interactiva de la API { #interactive-api-docs } -Ahora ve a http://127.0.0.1:8000/docs. +Ahora ve a [http://127.0.0.1:8000/docs](http://127.0.0.1:8000/docs). -Verás la documentación interactiva automática de la API (proporcionada por Swagger UI): +Verás la documentación interactiva automática de la API (proporcionada por [Swagger UI](https://github.com/swagger-api/swagger-ui)):  ### Documentación alternativa de la API { #alternative-api-docs } -Y ahora, ve a http://127.0.0.1:8000/redoc. +Y ahora, ve a [http://127.0.0.1:8000/redoc](http://127.0.0.1:8000/redoc). -Verás la documentación alternativa automática (proporcionada por ReDoc): +Verás la documentación alternativa automática (proporcionada por [ReDoc](https://github.com/Rebilly/ReDoc)):  @@ -316,7 +316,7 @@ El servidor `fastapi dev` debería recargarse automáticamente. ### Actualización de la documentación interactiva de la API { #interactive-api-docs-upgrade } -Ahora ve a http://127.0.0.1:8000/docs. +Ahora ve a [http://127.0.0.1:8000/docs](http://127.0.0.1:8000/docs). * La documentación interactiva de la API se actualizará automáticamente, incluyendo el nuevo body: @@ -332,7 +332,7 @@ Ahora ve a http://127.0.0.1:8000/redoc. +Y ahora, ve a [http://127.0.0.1:8000/redoc](http://127.0.0.1:8000/redoc). * La documentación alternativa también reflejará el nuevo parámetro de query y body: @@ -374,7 +374,7 @@ item: Item * Parámetros de query. * Cookies. * Headers. - * Forms. + * Formularios. * Archivos. * Conversión de datos de salida: convirtiendo de datos y tipos de Python a datos de red (como JSON): * Convertir tipos de Python (`str`, `int`, `float`, `bool`, `list`, etc). @@ -442,7 +442,7 @@ Para un ejemplo más completo incluyendo más funcionalidades, ve al Inyección de Dependencias** muy poderoso y fácil de usar. * Seguridad y autenticación, incluyendo soporte para **OAuth2** con **tokens JWT** y autenticación **HTTP Basic**. * Técnicas más avanzadas (pero igualmente fáciles) para declarar **modelos JSON profundamente anidados** (gracias a Pydantic). -* Integración con **GraphQL** usando Strawberry y otros paquetes. +* Integración con **GraphQL** usando [Strawberry](https://strawberry.rocks) y otros paquetes. * Muchas funcionalidades extra (gracias a Starlette) como: * **WebSockets** * pruebas extremadamente fáciles basadas en HTTPX y `pytest` @@ -452,24 +452,10 @@ Para un ejemplo más completo incluyendo más funcionalidades, ve al FastAPI Cloud, ve y únete a la lista de espera si no lo has hecho. 🚀 +Opcionalmente puedes desplegar tu app de FastAPI en [FastAPI Cloud](https://fastapicloud.com), ve y únete a la lista de espera si no lo has hecho. 🚀 Si ya tienes una cuenta de **FastAPI Cloud** (te invitamos desde la lista de espera 😉), puedes desplegar tu aplicación con un solo comando. -Antes de desplegar, asegúrate de haber iniciado sesión: - -Acerca del comando
+fastapi dev main.py...Acerca del comando
-El comando `fastapi dev` lee tu archivo `main.py`, detecta la app **FastAPI** en él y arranca un servidor usando Uvicorn. +El comando `fastapi dev` lee tu archivo `main.py` automáticamente, detecta la app **FastAPI** en él y arranca un servidor usando [Uvicorn](https://www.uvicorn.dev). Por defecto, `fastapi dev` comenzará con auto-recarga habilitada para el desarrollo local. -Puedes leer más sobre esto en la documentación del CLI de FastAPI. +Puedes leer más sobre esto en la [documentación del CLI de FastAPI](https://fastapi.tiangolo.com/es/fastapi-cli/).fastapi dev...- -```console -$ fastapi login - -You are logged in to FastAPI Cloud 🚀 -``` - -- -Luego despliega tu app: -```console @@ -488,7 +474,7 @@ Deploying to FastAPI Cloud... #### Acerca de FastAPI Cloud { #about-fastapi-cloud } -**FastAPI Cloud** está construido por el mismo autor y equipo detrás de **FastAPI**. +**[FastAPI Cloud](https://fastapicloud.com)** está construido por el mismo autor y equipo detrás de **FastAPI**. Optimiza el proceso de **construir**, **desplegar** y **acceder** a una API con un esfuerzo mínimo. @@ -504,9 +490,9 @@ Sigue las guías de tu proveedor de cloud para desplegar apps de FastAPI con ell ## Rendimiento { #performance } -Benchmarks independientes de TechEmpower muestran aplicaciones **FastAPI** ejecutándose bajo Uvicorn como uno de los frameworks Python más rápidos disponibles, solo por debajo de Starlette y Uvicorn (usados internamente por FastAPI). (*) +Benchmarks independientes de TechEmpower muestran aplicaciones **FastAPI** ejecutándose bajo Uvicorn como [uno de los frameworks Python más rápidos disponibles](https://www.techempower.com/benchmarks/#section=test&runid=7464e520-0dc2-473d-bd34-dbdfd7e85911&hw=ph&test=query&l=zijzen-7), solo por debajo de Starlette y Uvicorn (usados internamente por FastAPI). (*) -Para entender más sobre esto, ve la sección Benchmarks. +Para entender más sobre esto, ve la sección [Benchmarks](https://fastapi.tiangolo.com/es/benchmarks/). ## Dependencias { #dependencies } @@ -518,19 +504,19 @@ Cuando instalas FastAPI con `pip install "fastapi[standard]"` viene con el grupo Usadas por Pydantic: -*email-validator- para validación de correos electrónicos. +* [`email-validator`](https://github.com/JoshData/python-email-validator) - para validación de correos electrónicos. Usadas por Starlette: -*httpx- Requerido si deseas usar el `TestClient`. -*jinja2- Requerido si deseas usar la configuración de plantilla por defecto. -*python-multipart- Requerido si deseas soportar form "parsing", con `request.form()`. +* [`httpx`](https://www.python-httpx.org) - Requerido si deseas usar el `TestClient`. +* [`jinja2`](https://jinja.palletsprojects.com) - Requerido si deseas usar la configuración de plantilla por defecto. +* [`python-multipart`](https://github.com/Kludex/python-multipart) - Requerido si deseas soportar form "parsing", con `request.form()`. Usadas por FastAPI: -*uvicorn- para el servidor que carga y sirve tu aplicación. Esto incluye `uvicorn[standard]`, que incluye algunas dependencias (por ejemplo, `uvloop`) necesarias para servir con alto rendimiento. +* [`uvicorn`](https://www.uvicorn.dev) - para el servidor que carga y sirve tu aplicación. Esto incluye `uvicorn[standard]`, que incluye algunas dependencias (por ejemplo, `uvloop`) necesarias para servir con alto rendimiento. * `fastapi-cli[standard]` - para proporcionar el comando `fastapi`. - * Esto incluye `fastapi-cloud-cli`, que te permite desplegar tu aplicación de FastAPI en FastAPI Cloud. + * Esto incluye `fastapi-cloud-cli`, que te permite desplegar tu aplicación de FastAPI en [FastAPI Cloud](https://fastapicloud.com). ### Sin Dependencias `standard` { #without-standard-dependencies } @@ -546,13 +532,13 @@ Existen algunas dependencias adicionales que podrías querer instalar. Dependencias opcionales adicionales de Pydantic: -*pydantic-settings- para la gestión de configuraciones. -*pydantic-extra-types- para tipos extra para ser usados con Pydantic. +* [`pydantic-settings`](https://docs.pydantic.dev/latest/usage/pydantic_settings/) - para la gestión de configuraciones. +* [`pydantic-extra-types`](https://docs.pydantic.dev/latest/usage/types/extra_types/extra_types/) - para tipos extra para ser usados con Pydantic. Dependencias opcionales adicionales de FastAPI: -*orjson- Requerido si deseas usar `ORJSONResponse`. -*ujson- Requerido si deseas usar `UJSONResponse`. +* [`orjson`](https://github.com/ijl/orjson) - Requerido si deseas usar `ORJSONResponse`. +* [`ujson`](https://github.com/esnme/ultrajson) - Requerido si deseas usar `UJSONResponse`. ## Licencia { #license } diff --git a/docs/es/docs/project-generation.md b/docs/es/docs/project-generation.md index 6d48d0be54..11a560eba6 100644 --- a/docs/es/docs/project-generation.md +++ b/docs/es/docs/project-generation.md @@ -4,7 +4,7 @@ Las plantillas, aunque normalmente vienen con una configuración específica, es Puedes usar esta plantilla para comenzar, ya que incluye gran parte de la configuración inicial, seguridad, base de datos y algunos endpoints de API ya hechos para ti. -Repositorio de GitHub: Plantilla Full Stack FastAPI +Repositorio de GitHub: [Plantilla Full Stack FastAPI](https://github.com/tiangolo/full-stack-fastapi-template) ## Plantilla Full Stack FastAPI - Stack de tecnología y funcionalidades { #full-stack-fastapi-template-technology-stack-and-features } diff --git a/docs/es/docs/virtual-environments.md b/docs/es/docs/virtual-environments.md index f8839ac6c3..682f9e947c 100644 --- a/docs/es/docs/virtual-environments.md +++ b/docs/es/docs/virtual-environments.md @@ -22,7 +22,7 @@ Un **entorno virtual** es un directorio con algunos archivos en él. Esta página te enseñará cómo usar **entornos virtuales** y cómo funcionan. -Si estás listo para adoptar una **herramienta que gestiona todo** por ti (incluyendo la instalación de Python), prueba uv. +Si estás listo para adoptar una **herramienta que gestiona todo** por ti (incluyendo la instalación de Python), prueba [uv](https://github.com/astral-sh/uv). /// @@ -86,7 +86,7 @@ $ python -m venv .venv //// tab | `uv` -Si tienes instalado `uv`, puedes usarlo para crear un entorno virtual. +Si tienes instalado [`uv`](https://github.com/astral-sh/uv), puedes usarlo para crear un entorno virtual.@@ -150,7 +150,7 @@ $ .venv\Scripts\Activate.ps1 //// tab | Windows Bash -O si usas Bash para Windows (por ejemplo, Git Bash): +O si usas Bash para Windows (por ejemplo, [Git Bash](https://gitforwindows.org/)):@@ -216,7 +216,7 @@ Si muestra el binario de `python` en `.venv\Scripts\python`, dentro de tu proyec /// tip | Consejo -Si usas `uv` usarías eso para instalar cosas en lugar de `pip`, por lo que no necesitas actualizar `pip`. 😎 +Si usas [`uv`](https://github.com/astral-sh/uv) usarías eso para instalar cosas en lugar de `pip`, por lo que no necesitas actualizar `pip`. 😎 /// @@ -268,7 +268,7 @@ Si estás usando **Git** (deberías), añade un archivo `.gitignore` para exclui /// tip | Consejo -Si usaste `uv` para crear el entorno virtual, ya lo hizo por ti, puedes saltarte este paso. 😎 +Si usaste [`uv`](https://github.com/astral-sh/uv) para crear el entorno virtual, ya lo hizo por ti, puedes saltarte este paso. 😎 /// @@ -340,7 +340,7 @@ $ pip install "fastapi[standard]" //// tab | `uv` -Si tienes `uv`: +Si tienes [`uv`](https://github.com/astral-sh/uv):@@ -372,7 +372,7 @@ $ pip install -r requirements.txt //// tab | `uv` -Si tienes `uv`: +Si tienes [`uv`](https://github.com/astral-sh/uv):@@ -416,8 +416,8 @@ Probablemente usarías un editor, asegúrate de configurarlo para que use el mis Por ejemplo: -* VS Code -* PyCharm +* [VS Code](https://code.visualstudio.com/docs/python/environments#_select-and-activate-an-environment) +* [PyCharm](https://www.jetbrains.com/help/pycharm/creating-virtual-environment.html) /// tip | Consejo @@ -453,7 +453,7 @@ Continúa leyendo. 👇🤓 ## Por qué Entornos Virtuales { #why-virtual-environments } -Para trabajar con FastAPI necesitas instalar Python. +Para trabajar con FastAPI necesitas instalar [Python](https://www.python.org/). Después de eso, necesitarías **instalar** FastAPI y cualquier otro **paquete** que desees usar. @@ -562,7 +562,7 @@ $ pip install "fastapi[standard]"-Eso descargará un archivo comprimido con el código de FastAPI, normalmente desde PyPI. +Eso descargará un archivo comprimido con el código de FastAPI, normalmente desde [PyPI](https://pypi.org/project/fastapi/). También **descargará** archivos para otros paquetes de los que depende FastAPI. @@ -625,7 +625,7 @@ $ .venv\Scripts\Activate.ps1 //// tab | Windows Bash -O si usas Bash para Windows (por ejemplo, Git Bash): +O si usas Bash para Windows (por ejemplo, [Git Bash](https://gitforwindows.org/)):@@ -637,13 +637,13 @@ $ source .venv/Scripts/activate //// -Ese comando creará o modificará algunas [variables de entorno](environment-variables.md){.internal-link target=_blank} que estarán disponibles para los siguientes comandos. +Ese comando creará o modificará algunas [variables de entorno](environment-variables.md) que estarán disponibles para los siguientes comandos. Una de esas variables es la variable `PATH`. /// tip | Consejo -Puedes aprender más sobre la variable de entorno `PATH` en la sección [Variables de Entorno](environment-variables.md#path-environment-variable){.internal-link target=_blank}. +Puedes aprender más sobre la variable de entorno `PATH` en la sección [Variables de Entorno](environment-variables.md#path-environment-variable). /// @@ -844,7 +844,7 @@ Esta es una guía simple para comenzar y enseñarte cómo funciona todo **por de Hay muchas **alternativas** para gestionar entornos virtuales, dependencias de paquetes (requisitos), proyectos. -Una vez que estés listo y quieras usar una herramienta para **gestionar todo el proyecto**, dependencias de paquetes, entornos virtuales, etc. Te sugeriría probar uv. +Una vez que estés listo y quieras usar una herramienta para **gestionar todo el proyecto**, dependencias de paquetes, entornos virtuales, etc. Te sugeriría probar [uv](https://github.com/astral-sh/uv). `uv` puede hacer muchas cosas, puede: