skillfed

nameko

A microservices framework for Python that lets service developers concentrate on application logic and encourages testability.

nameko v2.14.1 88.5K downloads/30d#13,726 on PyPI4,754
Permissive license Apache License, Version 2.0 DORMANT released

What it is and what it does

Nameko is a microservices framework that treats each service as a Python class decorated with RPC, HTTP, or event handlers. It abstracts away the plumbing of inter-service communication (AMQP, HTTP, WebSockets) so developers can focus on business logic. Services are defined declaratively, run via a CLI, and communicate through a message broker or HTTP.

The framework includes utilities for unit and integration testing, a REPL shell for interactive exploration, and support for both synchronous RPC and asynchronous pub-sub patterns. It depends on eventlet for async I/O, kombu for AMQP abstraction, werkzeug for HTTP, and several utility libraries. The codebase supports Python 2.7 through 3.9 according to classifiers, though the last release was in December 2021.

Use it for:

  • Build a distributed system where multiple services communicate via RPC or pub-sub events over AMQP.
  • Rapidly prototype microservices with minimal boilerplate—define a class, decorate methods, run with nameko CLI.
  • Write testable service code with built-in mocking and testing utilities for unit and integration tests.
  • Expose service logic over HTTP endpoints or WebSockets alongside internal RPC communication.
  • Migrate a monolith to services incrementally by extracting business logic into nameko services.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Nameko is a microservices framework for Python that lets you build services as simple classes with RPC, pub-sub events, HTTP endpoints, and WebSocket support, with built-in testing utilities.

Yes, with conditions. Nameko is well-suited for greenfield microservices projects or teams already committed to AMQP-based architectures and Python 2.7–3.9. However, maintenance is dormant; do not adopt for new projects requiring active upstream support or modern Python versions beyond 3.9. Existing projects using it are stable, but consider long-term support implications before starting new work.

Install

nameko on PyPI

pip

pip install nameko

uv

uv add nameko

poetry

poetry add nameko

Installing nameko

Before you install

Low install friction with a pure-Python wheel distribution. Maintenance is dormant—last release was 2021-12-05, though the repository remains active with recent commits and 4754 stars. Suitable for established projects but not for new development requiring active upstream support.

License in practice

Licensed under Apache License, Version 2.0 (permissive). You may use, modify, and distribute nameko freely in commercial and private projects, provided you include the license notice.

Quickstart

# Install
pip install nameko

# helloworld.py
from nameko.rpc import rpc

class GreetingService:
    name = "greeting_service"
    
    @rpc
    def hello(self, name):
        return "Hello, {}!".format(name)

# Run: nameko run helloworld
# Call from shell: nameko shell
# >>> n.rpc.greeting_service.hello(name="World")

Requires AMQP broker (RabbitMQ) for RPC and pub-sub features; HTTP and testing modes work without it.

Verify before relying

  • Current Python 3.10+ compatibility—classifiers list up to 3.9; requires_python is unspecified
  • Whether dormant status affects security patching or critical bug fixes going forward
  • Production-readiness guarantees given the time elapsed since last release

Package facts

License Apache License, Version 2.0 (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 11 — eventlet, kombu, mock, path.py, pyyaml, requests, six, werkzeug, wrapt, packaging, dnspython
Maintenance dormant — 1,713 days since the last release
Last repo commit
First released
Downloads 88,486/month — #13,726 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: nameko-2.14.1-py2.py3-none-any.whl

Intended Audience :: DevelopersOperating System :: MacOS :: MacOS XOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: InternetTopic :: Software Development :: Libraries :: Python Modules

Tags

microservices framework pythonrpc messaging frameworkamqp service frameworkpython service architecturedistributed services pythonevent-driven microservicesservice mesh python
microservicesrpc-frameworkamqp

More Python Modules packages