88 captures
21 Jan 2021 - 03 Jan 2026
Jul AUG Sep
14
2020 2021 2022
success
fail

About this capture

COLLECTED BY

Organization: Internet Archive

The Internet Archive discovers and captures web pages through many different web crawls. At any given time several distinct crawls are running, some for months, and some every day or longer. View the web archive through the Wayback Machine.

Collection: Wide Crawl Number 18

TIMESTAMPS

The Wayback Machine - http://web.archive.org/web/20210814122214/https://tiangolo.medium.com/
 


Open in app
Sebastián Ramírez

1.2K Followers
About

Sign in


Open in app

Jun 19

The Future of FastAPI and Pydantic is Bright

This article lives in:
Dev.to
Medium
GitHub

In very short

The future of FastAPI and Pydantic is bright. 
This is because we all, as the Python community, define their future. To help us and to help others. From the Core Developers making Python itself to the new developers that started learning Python this month.
And as long as these tools are helping us all solve problems, help ourselves, help others, and be more efficient and productive, we all will keep them working and improving.
And thats what we are all doing. 🤓🚀

Intro

You might have heard not long ago about PEP 563

Read more · 15 min read





3

Mar 6

Deploying FastAPI (and other) apps with HTTPS powered by Traefik



This article lives in:
Dev.to
Medium
GitHub

Intro

Lets say you have a FastAPI application or actually, any other type of web application, including a Panel dashboard with Pandas DataFrames and Bokeh visualizations, or a Streamlit application. These are, in the end, web applications. You could think of many other examples.
Now lets say it all works well locally, on your machine.
But in most cases, the purpose of these web apps is to be available on the real web (not only on your machine), so that others can actually access them.
So you need to deploy them somewhere, on a

Read more · 11 min read





Jan 3

FastAPI top-level dependencies

This article lives in:
Dev.to
Medium
GitHub

Intro

FastAPI version 0.62.0 comes with global dependencies that you can apply to a whole application.
As well as top-level dependencies, tags, and other parameters for APIRouters, that before were available only on app.include_router().
This makes it easier to put configurations and dependencies (e.g. for authentication) related to a group of path operations more closely together. 🔒
Lets start by checking APIRouter...

Include a router

Imagine you had a file users.py with:
from fastapi import APIRouterrouter = APIRouter()
@router.get("/users/")
def read_users():
return ["rick", "morty"]

And now lets say you want to include it in the main.py

Read more · 2 min read





May 17, 2020

Concurrent Burgers  Understand async / await

This article lives in:
Dev.to
Medium
GitHub
FastAPIs docs (including translations to other languages)

Intro

Modern versions of Python (and other languages) have support for asynchronous code using something called coroutines, with async and await syntax.
Heres a friendly and not very technical explanation to give some intuition about all that, including asynchronous code, concurrency, and parallelism.
This is taken from the docs for FastAPI, a modern framework for building APIs in Python.
Although this was written for Python and FastAPI, all the story and information is relevant for other languages that also have async and await, like JavaScript and Rust.




Read more · 12 min read





1

Feb 27, 2020

Build a web API from scratch with FastAPI  the workshop

This article lives in:
Dev.to
Medium
GitHub

The first FastAPI workshop at PyCon Belarus

Last weekend I had the chance to go to PyCon Belarus, I had a great time and met a lot of great people.
I gave a talk there:


And a workshop with about 60 people:

Creating the workshop

When creating the workshop I got a bit excited and created too much content for the time I had available.
The final app ended up having basic OAuth2 authentication, authorization handling with dependencies, tests with full coverage, etc.
I gave a test trial of the full workshop to Camila and the total time was about 9

Read more · 6 min read





Dec 23, 2019

How to start contributing to open source

Heres a tip to help you get started contributing to open source (if you havent started yet).


This article lives in:
Dev.to
Medium
GitHub

TL;DR

(too long, didnt read)
Newbies are great at docs, better than maintainers. Start with that.

Find a problem

First, find a problem that you want to solve, something that you care about.
If you see you can solve it easily without technology, cool, go and do that. And come back with a new problem ;)
Then find how technology could help to solve it, what kind of app or system would help.

Find a project

Then find an open source project that

Read more · 3 min read





Feb 4, 2019

Introducing FastAPI

FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.
This article lives in:
Medium
GitHub
FastAPI (original documentation)

Intro

I have been avoiding the creation of a new framework for several years. First I tried to solve all the features covered by FastAPI using many different frameworks, plug-ins, and tools.
But at some point, there was no other option than creating something that provided all these features, taking the best ideas from previous tools, and combining them in the best way possible, using language features that werent even available before

Read more · 6 min read





9

Jan 19, 2019

Docker Swarm with Swarmprom for real-time monitoring and alerts

This article lives in:
Medium
GitHub
DockerSwarm.rocks

Intro

Lets say you already set up a Docker Swarm mode cluster as described in DockerSwarm.rocks, with a Traefik distributed HTTPS proxy.
Heres how you can set up Swarmprom to monitor your cluster.
It will allow you to:
Monitor CPU, disk, memory usage, etc.
Monitor it all per node, per service, per container, etc.
Have a nice, interactive, real-time dashboard with all the data nicely plotted.
Trigger alerts (for example, in Slack, Rocket.chat, etc) when your services/nodes pass certain thresholds.
And more
Swarmprom is actually just a set of tools pre-configured in a smart

Read more · 2 min read





Jan 18, 2019

Docker Swarm Mode and Distributed Traefik proxy with HTTPS

This article lives in:
Medium
GitHub
DockerSwarm.rocks

Intro

So, you have a Docker Swarm mode cluster set up as described in DockerSwarm.rocks.
Now you can add a main, distributed, Traefik load balancer/proxy to:
Handle connections.
Expose specific services and applications based on their domain names.
Handle multiple domains (if you need to). Similar to virtual hosts.
Handle HTTPS.
Acquire (generate) HTTPS certificates automatically (including renewals) with Lets Encrypt.
Add HTTP Basic Auth for any service that you need to protect and doesnt have its own security, etc.
Get all its configurations automatically from Docker labels set in your stacks (you dont

Read more · 7 min read





9


Oct 13, 2018

Docker Swarm Mode and Traefik for an HTTPS cluster

This article lives in:
Medium
GitHub

Update

I created DockerSwarm.rocks to put these and related ideas together.
And theres an updated version of this article, with distributed Traefik and Consul (this article is for a single node Traefik, even when running in a cluster):
Medium
GitHub
DockerSwarm.rocks

Note

If you want to have a distributed Traefik HTTPS proxy/load-balancer, you should check instead the guide for the distributed version on DockerSwarm.rocks: Traefik Proxy with HTTPS. It can also run on a single node.
This is the old version, having a Traefik instance on a single node. 

Read more · 9 min read





7

Sebastián Ramírez

Creator of FastAPI and Typer. Dev at Exposion AI. APIs, Deep Learning/Machine Learning, full-stack distributed systems, SQL/NoSQL, Python, Docker, JS, TS, etc.


About
Write
Help
Legal
Get the Medium app
A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store