Our FastAPI Project Template

Our FastAPI Project Template
Note
The template repository can be found on GitHub here.

FastAPI is a fantastic tool for building REST APIs in Python. However, many tutorials, guides, and project templates set developers up for failure as their APIs grow in scope and complexity. A quick search for “FastAPI project templates” reveals a recurring pattern:

my_fastapi_project/
├── app/
│   ├── __init__.py
│   ├── main.py
│   ├── dependencies.py
│   ├── routers/
│   │   ├── __init__.py
│   │   ├── users.py
│   │   └── items.py
│   ├── internal/
│   │   ├── __init__.py
│   │   └── admin.py
│   ├── core/
│   │   ├── __init__.py
│   │   ├── config.py
│   │   └── security.py
│   ├── models/
│   │   ├── __init__.py
│   │   ├── user.py
│   │   └── item.py
│   ├── schemas/
│   │   ├── __init__.py
│   │   ├── user.py
│   │   └── item.py
│   ├── services/
│   │   ├── __init__.py
│   │   ├── user_service.py
│   │   └── item_service.py
│   └── db/
│       ├── __init__.py
│       ├── database.py
│       └── migrations/
├── tests/
│   ├── __init__.py
│   ├── test_main.py
│   ├── test_users.py
│   ├── test_items.py
├── .env
├── .gitignore
├── requirements.txt
├── README.md
└── run.sh

While this setup is fine for smaller projects, our team has found that the developer ergonomics suffer as the API expands. This is primarily because developers are forced to jump between multiple directory trees to work on related logic.

[Read more]

Search Agent Optimization

Search Agent Optimization

AI Summaries

The summarization of digital media has become one of the most prominent and impactful applications of artificial intelligence in recent months. YouTube has introduced a feature that instantly generates a text summary of any video on the platform, enabling users to extract information from a video without actually watching it. Other platforms are implementing content summary features as well. Microsoft Copilot can summarize your emails, Spotify Recap can summarize audiobook chapters, and Google will even summarize the entire internet for you with AI Overviews. These “AI summary” features seem to be invading every content consumption platform on the internet.

[Read more]

The Land Cruiser of Laptops

100 Series Toyota Land Cruiser

Toyota Land Cruiser 100 Series

Produced from 1999 through 2007, the Toyota Land Cruiser 100 Series is arguably one of the toughest vehicles ever made. It’s not uncommon to see a 100 Series on the road today with well over 300,000 miles on the odometer and still going strong. Inside the cabin, you won’t find modern conveniences like push-button start, touchscreen navigation, lane-keep assist, or even a backup camera. Instead, Toyota prioritized a body-on-frame architecture, solid rear axle, and the legendary 4.7-liter 2UZ-FE—often cited as one of the most reliable engines Toyota has ever produced. This simple, no-nonsense construction has resulted in one of the most durable trucks to ever roll off an assembly line.

[Read more]

Switching to Ungoogled Chromium

There aren’t many real choices when it comes to web browsers these days. Over the past decade or so, Google Chrome has effectively monopolized the market, with most estimates placing its global market share between 60 and 70 percent. In addition to obvious anti-consumer concerns, this is especially unsettling for privacy-conscious individuals, as it leaves much of the modern web shaped by a company whose business model is fundamentally at odds with user privacy.

[Read more]

An Unexpected [Linux] Journey

An Unexpected [Linux] Journey

Introduction

The year of the Linux desktop” is somewhat of a running joke in the Linux community. It refers to the idea that one day, Linux will finally establish itself as a mainstream desktop operating system alongside Windows and macOS for everyday computer users. But the prophecy has not yet been fulfilled—thanks to limited support for popular software, a fragmented landscape of desktop environments, and minimal adoption from computer manufacturers. All of this has kept Linux just out of reach for the average computer user.

[Read more]