diafygi/acme-tiny

A tiny script to issue and renew TLS certs from Let's Encrypt

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 44 minutes ago
Added to GitGenius on September 14th, 2026
Created on November 26th, 2015
Open Issues & Pull Requests: 33 (+0)
GitHub issues: Enabled
Number of forks: 576
Total Stargazers: 4,769 (+0)
Total Subscribers: 146 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 7.1 hours
Mean response time: 85.9 days
90th percentile: 140.7 days
Tracked items: 14

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 11
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 619 days
Stale 30+ days: 11
Stale 90+ days: 9

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

acme-tiny is a Python script for issuing and renewing TLS certificates from Let's Encrypt.

The script solves the problem of obtaining and maintaining Let's Encrypt certificates on a server without requiring a full-featured client. It implements the ACME protocol by taking a minimal approach: the script handles account key management, certificate signing requests, domain ownership validation through HTTP challenge files, and certificate renewal. The design prioritizes auditability and simplicity, keeping the implementation under 200 lines and requiring only Python and OpenSSL as dependencies.

The tool is suited for developers and operators who understand public key cryptography and are comfortable managing certificate infrastructure manually. It works well for straightforward deployments where you control the server and can host challenge files at the .well-known/acme-challenge/ path over HTTP. The script requires you to generate and maintain your own Let's Encrypt account private key and certificate signing requests, then orchestrate renewals through cron jobs. If you lack familiarity with cryptographic concepts or prefer automated certificate management without manual key handling, the official Let's Encrypt client is the recommended alternative.

The project maintains a stable, minimal codebase with infrequent changes. Pull requests receive responses but are merged selectively, suggesting careful stewardship of the script's scope and simplicity. Issue discussions show engagement with users on technical questions and edge cases, though resolution is deliberate rather than rapid. The maintainer has explicitly prioritized keeping the implementation auditable and trustworthy rather than adding features, reflecting the security-sensitive nature of handling private account keys.