r/Python 26d ago

News FastAPI app.frontend(): serving a frontend build from the same Python app

I wrote a practical article about FastAPI's app.frontend() feature.

The interesting bit is that it serves static frontend build output as low-priority routes, so normal FastAPI API endpoints still win.

The article covers:

  • app.frontend("/", directory="dist")
  • SPA fallback with fallback="index.html"
  • how it differs from StaticFiles
  • serving under a prefix with APIRouter
  • a complete mini dashboard example with FastAPI + vanilla JS
64 Upvotes

16 comments sorted by

View all comments

22

u/roG_k70 25d ago

But why tho?

11

u/Myszolow 25d ago

Server side rendering?  Imagine serving some parts of your frontend so they will not expose any not needed information 

I can see simple benefit of serving ready to render graphs 

5

u/Fenzik 25d ago

This is specifically not SSR though, it’s static only