repowiselitestar-org/litestar

Architecture of litestar-org/litestar

litestar-org/litestar is 1,164 source files holding 7,089 symbols across 8 modules, written mainly in Python, JavaScript, Luau. The largest module is tests, with 409 files, and 14 files are entry points into the dependency graph.

How litestar fits together

Requests enter through an ASGI application created from the Litestar class, which is exported from litestar/__init__.py and defined in litestar/app.py. Route handlers are registered on that application, and their type hints tell the framework how to parse inputs and which OpenAPI schema to produce. litestar/_kwargs/kwargs_model.py builds the keyword arguments passed to each handler from the request. Dependencies, guards and middleware are declared at the app, router or controller level and run around the handler. The litestar run command, implemented in litestar/cli/main.py, starts the application from the command line.

Largest modules

  • tests: 409 files and 36,817 lines of code
  • docs: 391 files and 7,164 lines of code
  • litestar: 308 files and 37,134 lines of code
  • test_apps: 15 files and 127 lines of code
  • tools: 8 files and 823 lines of code
  • .github: 2 files and 60 lines of code
  • .devcontainer: 1 file and 10 lines of code
  • root: 1 file and 119 lines of code

Languages

By file count: Python 1,127 files, JavaScript 3 files, Luau 3 files, Dockerfile 1 file, Makefile 1 file.

Documentation

Repowise documents litestar in 766 pages generated from the source.

More on litestar: summary and FAQ, codebase overview, code health.

Related guide: Best dependency graph tools for monorepos