convex
Python client for the reactive backend-as-a-service Convex.
Decision gist · record as of 2026-08-14
Yes, if you are already using Convex as your backend platform and need a Python client. The package is actively maintained, has no external dependencies, and supports current Python versions. The pre-1.0.0 status and stated willingness to make breaking changes warrant caution for long-term production use, but it is suitable for projects committed to tracking Convex's evolution. No known security vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later; Convex backend URL must be obtained from the Convex dashboard.
- Medium install friction due to compiled wheels for multiple architectures and Python versions.
- Package is actively maintained with recent releases; repo shows active development and reasonable community engagement.
License · maintenance · safety
Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most projects.
last release 2024-12-17 (605 days) · last repo commit 2026-08-13 · 90 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 95,068 downloads/mo, #13,293 on PyPI
Alternatives
Verify before relying
pip install convex
from convex import ConvexClient
client = ConvexClient('https://example-lion-123.convex.cloud')
messages = client.query("messages:list")
print(messages)- Whether subscription streaming (client.subscribe) works reliably in production environments and what reconnection/error-recovery behavior is implemented.
- Performance characteristics and latency for large result sets or high-frequency queries.
- Support timeline and backwards-compatibility guarantees given the pre-1.0.0 status and stated willingness to make breaking changes.
What it is and what it does
Convex is a Python client for the Convex backend-as-a-service platform. It allows you to call queries, mutations, and actions defined in your Convex backend from Python code, passing arguments and receiving results over HTTP. The client handles type conversion between Python and JavaScript (including special handling for Int64 via ConvexInt64), supports authentication via tokens, and provides subscription-based real-time updates. It also includes error handling for ConvexError exceptions propagated from backend functions.
The package is built with compiled wheels for broad platform support (x86_64, ARM, and other architectures across Linux, macOS, and musl systems). It has no runtime dependencies beyond Python itself, making it lightweight to install. The client is designed to integrate with Convex's cloud-hosted backend, requiring a deployment URL and knowledge of available RPC functions from the Convex dashboard.
Use it for
- Call Convex backend queries from a Python script or application to fetch data without managing a separate database.
- Execute mutations from Python to write or update data in Convex, triggered by application logic or scheduled tasks.
- Subscribe to real-time updates from Convex queries to keep local state synchronized with backend changes.
- Authenticate Python clients with tokens from Convex authentication flows to enforce access control.
- Integrate Convex as the backend for a Python web service or CLI tool, delegating data persistence to the cloud.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are already using Convex as your backend platform and need a Python client.
The package is actively maintained, has no external dependencies, and supports current Python versions. The pre-1.0.0 status and stated willingness to make breaking changes warrant caution for long-term production use, but it is suitable for projects committed to tracking Convex's evolution. No known security vulnerabilities.
Install
convex on PyPI
Before you install
Medium install friction due to compiled wheels for multiple architectures and Python versions. Package is actively maintained with recent releases; repo shows active development and reasonable community engagement.
Requires Python 3.9 or later; Convex backend URL must be obtained from the Convex dashboard.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most projects.
Quickstart
pip install convex
from convex import ConvexClient
client = ConvexClient('https://example-lion-123.convex.cloud')
messages = client.query("messages:list")
print(messages)
Verify before relying
- Whether subscription streaming (client.subscribe) works reliably in production environments and what reconnection/error-recovery behavior is implemented.
- Performance characteristics and latency for large result sets or high-frequency queries.
- Support timeline and backwards-compatibility guarantees given the pre-1.0.0 status and stated willingness to make breaking changes.
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 605 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 95,068 / month, #13,293 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaProgramming Language :: JavaScriptProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: RustTopic :: Database :: Front-EndsTopic :: Software Development :: Libraries :: Python Modules |
Evidence: convex-0.7.0-cp313-cp313t-macosx_10_12_x86_64.whl; convex-0.7.0-cp313-cp313t-macosx_11_0_arm64.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_aarch64.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_armv7l.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_i686.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_x86_64.whl; convex-0.7.0-cp39-abi3-macosx_10_12_x86_64.whl; convex-0.7.0-cp39-abi3-macosx_11_0_arm64.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.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 › “convex backend client”
- convexPython client for Convex, a backend-as-a-service platform, enabling…
- cvxpy-basecvxpy-base provides compiled solver kernels for CVXPY, a Python…
- ecosECOS is a Python wrapper for a numerical solver that handles convex…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also gql · cvxopt · vhacdx · cvxpy · scs · python-graphql-client · pipedream · qpsolvers · python-intercom · reka-api