Certifi

Mozilla's curated root CA bundle for verifying SSL/TLS certificates in Python.

Library
PyPI
v2026.7.22
1,001 stars
Mozilla Public License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
63 /100 Good
Development Activity 56
Maintenance 24
Community 84
Maturity 60
Momentum 28

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
75 /100 Good
Architecture 72
Code Quality 78
Innovation 88
Learning Curve 60

Certifi packages Mozilla’s carefully curated collection of Root Certificates and makes them available to Python applications for validating the trustworthiness of SSL/TLS certificates. Extracted from the Requests project, it exposes the on-disk path to a bundled cacert.pem file so any HTTP client or networking library can verify the identity of TLS hosts without depending on the host operating system’s certificate store.

Because it ships the trust store as a Python package, Certifi gives deployments a reliable and highly portable root of trust that behaves the same across platforms and container images. It is a foundational dependency of the Python HTTP ecosystem, pulled in by libraries such as Requests and httpx.

What You Get

  • A bundled cacert.pem file containing Mozilla’s curated root certificate authorities
  • A certifi.where() function returning the absolute path to the CA bundle for use with TLS libraries
  • A certifi.contents() function returning the PEM bundle as a string
  • A python -m certifi command-line entry point that prints the bundle path or contents
  • A fully type-annotated package (py.typed) with zero runtime dependencies

Common Use Cases

  • Providing the CA bundle that HTTP clients like Requests and httpx use to verify HTTPS connections
  • Supplying a portable root of trust to applications running in minimal container images without a system cert store
  • Configuring TLS verification for custom socket, urllib3, or SSLContext code by passing certifi.where()
  • Guaranteeing consistent certificate validation across development, CI, and production environments

Under The Hood

Architecture - Certifi’s implementation lives almost entirely in certifi/core.py, which returns the location or contents of the bundled cacert.pem. where() lazily resolves the bundle path via importlib.resources and caches it in module globals so extraction (needed under zipimport) happens at most once, registering an atexit cleanup for the resource context manager; contents() reads the PEM as ASCII text. certifi/__init__.py re-exports these two functions, and certifi/__main__.py wraps them in a small argparse CLI.

Tech Stack - The package is pure Python (targeting 3.7+) with zero runtime dependencies, deliberately kept dependency-free because it sits below setuptools and pip in the stack. It branches on sys.version_info to use the modern importlib.resources.files/as_file API on 3.11+ and the older path/read_text API below that. Packaging uses setuptools via a classic setup.py plus a minimal pyproject.toml build-system table, shipping the .pem data and a py.typed marker as package data.

Code Quality - The codebase is tiny and disciplined: functions are fully type-annotated, the version-conditional logic is thoroughly commented to explain the zipimport and cleanup subtleties, and a unittest suite (certifi/tests/test_certify.py) checks that the bundle path exists, that contents contain a PEM certificate block, and that the py.typed marker ships. Coverage is minimal but appropriate for a package whose surface is two functions.

API Design - The public API is about as ergonomic as it gets — two well-named functions, where() and contents(), with no configuration or setup required, plus a python -m certifi CLI for shell use. Integration is a single call (certifi.where()) that drops directly into any TLS library expecting a CA bundle path, which is why it became the de-facto trust store for the Python HTTP ecosystem.

Used by 32 apps in this directory

Python
100%
Apache 2.0

Agno

AI Development · Automation · Devops

42,358

Build, run, and manage agent platforms with a full production stack — SDK, runtime, and control plane included.

View details
93
Repo Health
87
Technical
66
Dependency
Built with
Python 100%
Updated 4 days ago
Python
59%
Apache 2.0

argilla

AI Development · Data Engineering

5,125

Collaborate on high-quality AI training data with a self-hosted annotation platform built for LLMs, NLP, and multimodal models.

View details
65
Repo Health
81
Technical
61
Dependency
Built with
Python 59%
Jupyter Notebook 21%
Updated 1 weeks ago
C++
68%
Apache 2.0

ClickHouse

Analytics · Data Engineering · Databases

50,116

Open-source column-oriented database that delivers real-time analytical queries on petabyte-scale data with millisecond latency.

View details
95
Repo Health
90
Technical
64
Dependency
Built with
C++ 68%
Python 14%
Updated 4 days ago
Go
32%
Apache 2.0

CubeSandbox

AI Agents · Developer Tools · Security

12,728

Instant, concurrent, hardware-isolated MicroVM sandboxes for AI agents — E2B-API compatible, sub-60ms cold starts, and a built-in zero-trust egress proxy, all self-hostable at scale.

View details
82
Repo Health
88
Technical
63
Dependency
Built with
Go 32%
Rust 26%
C 22%
Updated 1 weeks ago
C++
73%
Other

Dragonfly

Databases · Developer Tools · Devops

31,706

A modern Redis and Memcached replacement engineered for multi-core servers — delivering 25x more throughput, better cache hit rates, and up to 80% lower memory consumption with full API compatibility.

View details
90
Repo Health
9
Technical
71
Dependency
Built with
C++ 73%
Python 16%
Updated 5 days ago
C#
42%
MIT

FeatBit

Developer Tools · Devops

1,907

Self-hosted, enterprise-grade feature flag platform for safe, targeted, and data-driven feature releases.

View details
90
Repo Health
78
Technical
69
Dependency
Built with
C# 42%
TypeScript 41%
Updated 4 days ago
Python
70%
Apache 2.0

GPT Researcher

AI Assistants · Productivity

29,650

The pioneering open-source autonomous AI agent that conducts deep, multi-source research and produces citation-backed reports exceeding 2,000 words — faster and more reliably than any human researcher.

View details
91
Repo Health
91
Technical
63
Dependency
Built with
Python 70%
TypeScript 18%
Updated 6 days ago
TypeScript
97%
Other

GrowthBook

Ab Testing Experimentation · Analytics · Developer Tools

8,446

Open source feature flags, A/B testing, and warehouse-native experimentation that queries your existing data infrastructure—no data movement required.

View details
92
Repo Health
85
Technical
63
Dependency
Built with
TypeScript 97%
Updated 4 days ago
TypeScript
91%
Apache 2.0

Helicone

AI Development · Analytics · Monitoring

6,182

An open-source AI gateway and LLM observability platform that routes requests to 100+ models while logging cost, latency, and full traces for every call.

View details
70
Repo Health
81
Technical
65
Dependency
Built with
TypeScript 91%
Updated 2 weeks ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers