An open API service indexing awesome lists of open source software.

https://github.com/app-generator/fastapi-learn-by-coding

FastAPI - Learn by Coding | AppSeed
https://github.com/app-generator/fastapi-learn-by-coding

appseed-sample fastapi learn-by-coding

Last synced: about 1 month ago
JSON representation

FastAPI - Learn by Coding | AppSeed

Awesome Lists containing this project

README

          

# Learn FastAPI by Coding

Open-source project provided by AppSeed to help beginners accommodate faster with FastAPI. For newcomers, FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.

> Links

- 👉 [Getting Started with FastAPI](https://docs.appseed.us/technologies/fastapi/getting-started) - A comprehensive introduction to FastAPI
- 👉 Free [Support](https://appseed.us/support) via `email` and [Discord](https://discord.gg/fZC6hup).


## Getting Started with FastAPI

> Create a Virtual Environment

```bash
$ # Virtualenv modules installation (Unix-based systems)
$ virtualenv env
$ source env/bin/activate
$
$ # Virtualenv modules installation (Windows-based systems)
$ # virtualenv env
$ # .\env\Scripts\activate
```


> Install `FastAPI` and `uvicorn`

```bash
$ pip install fastapi
$ pip install uvicorn
```


> Edit your first file `main.py`

```python
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def root():
return {"message": "Hello FastAPI"}
```


> Start the app using `uvicorn`

```bash
$ uvicorn main:app --reload
$
$ The project is LIVE - https://localhost:8000
```


> Visualize auto-generated docs

- OpenAPI: `http://localhost:8000/docs`
- ReDoc: `http://localhost:8000/redoc`


![FastAPI - Browser Interactive Console.](https://user-images.githubusercontent.com/51070104/150373332-967dff20-52a9-4df9-adcf-15dd947bd8eb.jpg)


## Added Tortoise ORM Sample

> Original code: [ML & FastAPI - CH06](https://github.com/PacktPublishing/Building-Data-Science-Applications-with-FastAPI/tree/main/chapter6/tortoise)


**How to use it**

```bash
uvicorn app_tortoise:app --reload
```

Access the app in the browser and query the API

- `http://localhost:8000/docs` - Interactive UI
- `http://localhost:8000/posts` - List all posts


---
Learn FastAPI by Coding - Provided and actively supported by AppSeed [App Generator](https://appseed.us)