twirp
Twirp server and client lib
Decision gist · record as of 2026-08-14
No—the package is abandoned (last release 2022-04-24) with no active maintenance. License status is unclear, and there is no guarantee of compatibility with current Python or protobuf versions. Use only if you are maintaining legacy code already using this package.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires the protoc compiler and the protoc-gen-twirpy plugin (installed via Go).
- Also requires uvicorn to run the server.
- Low install friction with a pure-Python wheel.
License · maintenance · safety
(unclear) — License status is unclear; no SPDX identifier or raw license text is provided. Verify the actual license terms before using in a commercial or proprietary project.
last release 2022-04-24 (1573 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,086,330 downloads/mo, #4,384 on PyPI
Alternatives
Verify before relying
pip install twirp
from twirp.asgi import TwirpASGIApp
from twirp.exceptions import InvalidArgument
class MyService:
def MyMethod(self, context, request):
return response
service_instance = MyService()
app = TwirpASGIApp()
app.add_service(service_instance)- Whether the protoc-gen-twirpy plugin is still available and functional.
- Current compatibility with modern Python versions and protobuf library versions.
- Whether abandoned status affects stability or security for production use.
What it is and what it does
Twirp is a Python RPC framework that lets you define services in protobuf and automatically generate both server and client code. It implements the Twirp Wire Protocol v7, which is a lightweight alternative to gRPC that works over HTTP. The package provides an ASGI-compatible server wrapper (TwirpASGIApp) that you can run with uvicorn, plus client stubs that speak the Twirp protocol to remote services.
You define your service interface in a .proto file, run the protoc compiler with the twirpy plugin to generate Python code, then implement your service logic by subclassing the generated server class. The framework handles serialization, HTTP routing, and error handling. It depends on requests for HTTP calls, structlog for logging, and protobuf for message encoding.
Use it for
- Build microservices that communicate via Twirp RPC instead of REST or gRPC.
- Generate type-safe client and server stubs from protobuf definitions with minimal boilerplate.
- Migrate from Twirp services in other languages to Python.
- Create lightweight RPC services that run on standard ASGI servers like uvicorn.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No—the package is abandoned (last release 2022-04-24) with no active maintenance.
License status is unclear, and there is no guarantee of compatibility with current Python or protobuf versions. Use only if you are maintaining legacy code already using this package.
Install
twirp on PyPI
Before you install
Low install friction with a pure-Python wheel. However, the package is abandoned—last release was 2022-04-24, over 1573 days ago. No recent maintenance or security updates are expected.
Requires the protoc compiler and the protoc-gen-twirpy plugin (installed via Go). Also requires uvicorn to run the server.
License in practice
License status is unclear; no SPDX identifier or raw license text is provided. Verify the actual license terms before using in a commercial or proprietary project.
Quickstart
pip install twirp
from twirp.asgi import TwirpASGIApp
from twirp.exceptions import InvalidArgument
class MyService:
def MyMethod(self, context, request):
return response
service_instance = MyService()
app = TwirpASGIApp()
app.add_service(service_instance)
Verify before relying
- Whether the protoc-gen-twirpy plugin is still available and functional.
- Current compatibility with modern Python versions and protobuf library versions.
- Whether abandoned status affects stability or security for production use.
Package facts
| License | Not declared unclear |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagesrequestsstructlogprotobuf |
| Maintenance | Abandoned 1,573 days since the last release |
| First released | |
| Downloads | 1,086,330 / month, #4,384 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: twirp-0.0.7-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “twirp rpc framework python”
- twirpTwirp is a Python implementation of the Twirp RPC framework that…
- connect-pythonProvides Python client and server libraries for Connect RPC, a…
- grpciogRPC Python is an HTTP/2-based RPC framework that enables you to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also connect-python · protoc-gen-connect-python · betterproto-fw · aristaproto · hatch-protobuf · grpclib · connectrpc · grpc-gateway-protoc-gen-openapiv2 · betterproto-rust-codec · protoc-gen-openapiv2