{"id":13419513,"url":"https://github.com/komuw/sewer","last_synced_at":"2025-04-08T08:11:37.219Z","repository":{"id":22576260,"uuid":"96523010","full_name":"komuw/sewer","owner":"komuw","description":"Let's Encrypt(ACME) client. Python library \u0026  CLI app.","archived":false,"fork":false,"pushed_at":"2024-11-24T16:11:32.000Z","size":510,"stargazers_count":145,"open_issues_count":36,"forks_count":55,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-01T16:03:05.860Z","etag":null,"topics":["acme","acme-client","certbot","certificate-signing-request","letsencrypt"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/komuw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-07T09:30:40.000Z","updated_at":"2025-03-09T12:56:47.000Z","dependencies_parsed_at":"2025-01-27T04:40:07.360Z","dependency_job_id":"06c6f1b4-f601-4ed1-903a-9326fb71428e","html_url":"https://github.com/komuw/sewer","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/komuw%2Fsewer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/komuw%2Fsewer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/komuw%2Fsewer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/komuw%2Fsewer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/komuw","download_url":"https://codeload.github.com/komuw/sewer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247801170,"owners_count":20998339,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["acme","acme-client","certbot","certificate-signing-request","letsencrypt"],"created_at":"2024-07-30T22:01:17.054Z","updated_at":"2025-04-08T08:11:37.190Z","avatar_url":"https://github.com/komuw.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"## Sewer\n\n[![GitHub CI](https://github.com/komuw/sewer/actions/workflows/build.yml/basge.svg)](https://github.com/komuw/sewer/.github/workflows/build.yml)\n[![codecov](https://codecov.io/gh/komuW/sewer/branch/master/graph/badge.svg)](https://codecov.io/gh/komuW/sewer)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/komuw/sewer)\n\nSewer is a Let's Encrypt(ACME) client.  \nIt's name is derived from Kenyan hip hop artiste, Kitu Sewer.  \n\n- The stable release is\n  [0.8.4](https://komuw.github.io/sewer/notes/0.8.4-notes).\n- More history (including notes on 0.8.5-to-be) in the\n  [CHANGELOG](https://komuw.github.io/sewer/CHANGELOG).\n\nPYTHON compatibility: 3.7 and above are tested.\n\nI (maintainer @mmaney) loiter in channel ##sewer (on irc.freenode.net) for\nthose who remember IRC.  Don't ask to ask, but waiting is.\n\n## Features\n- Obtain or renew SSL/TLS certificates from [Let's Encrypt](https://letsencrypt.org)\n- Supports acme version 2 (current RFC including post-as-get).\n- Support for SAN certificates.\n- Supports [wildcard certificates](https://komuw.github.io/sewer/wildcards).\n- Bundling certificates.\n- Support for both RSA and ECDSA for account and certificate keys.\n- Supports [DNS and HTTP](https://komuw.github.io/sewer/UnifiedProvider) challenges\n  - List of currently supported\n    [DNS services and BYO-service notes](https://komuw.github.io/sewer/dns-01)\n  - HTTP challenges are a new feature, no operational drivers in the tree\n    yet.  [See usage and BYO-service notes](https://komuw.github.io/sewer/http-01)\n- sewer is both a [command-line program](https://komuw.github.io/sewer/sewer-cli)\n  and a [Python library](https://komuw.github.io/sewer/sewer-as-a-library) for custom use\n- Well written(if I have to say so myself):\n  - [Good test coverage](https://codecov.io/gh/komuW/sewer)\n  - [Passing continuous integration](https://circleci.com/gh/komuW/sewer)\n  - [High grade statically analyzed code](https://www.codacy.com/app/komuW/sewer/dashboard)\n  - type hinting to support mypy verification is a recently begun WIP\n\n## Installation\n\n```shell\npip install sewer\n\n# with All DNS Provider support, include aliyun, Hurricane Electric, Aurora, ACME ...\n# pip3 install sewer[alldns]\n\n# with Cloudflare support\n# pip3 install sewer[cloudflare]\n\n# with Aliyun support\n# pip3 install sewer[aliyun]\n\n# with HE DNS(Hurricane Electric DNS) support\n# pip3 install sewer[hurricane]\n\n# with Aurora DNS Support\n# pip3 install sewer[aurora]\n\n# with ACME DNS Support\n# pip3 install sewer[acmedns]\n\n# with Rackspace DNS Support\n# pip3 install sewer[rackspace]\n\n# with DNSPod DNS Support\n# pip3 install sewer[dnspod]\n\n# with DuckDNS DNS Support\n# pip3 install sewer[duckdns]\n\n# with ClouDNS DNS Support\n# pip3 install sewer[cloudns]\n\n# with AWS Route 53 DNS Support\n# pip3 install sewer[route53]\n\n# with PowerDNS DNS Support\n# pip3 install sewer[powerdns]\n```\n\nsewer(since version 0.5.0) is now python3 only.  To install the (now\nunsupported) python2 version:\n\n```shell\npip install sewer==0.3.0\n```\n\nSewer is in active development and it's API will change in backward incompatible ways.\n[https://pypi.python.org/pypi/sewer](https://pypi.python.org/pypi/sewer)\n\n## Development setup\n\nSee the how to contribute [documentation](https://github.com/komuw/sewer/blob/master/.github/CONTRIBUTING.md)\n\n## FAQ\n- Why another ACME client?          \n  I wanted an ACME client that I could use to programmatically(as a library) acquire/get certificates. However I could not \n  find anything satisfactory for use in Python code.\n- Why is it called Sewer?\n  I really like the Kenyan hip hop artiste going by the name of Kitu Sewer.                            \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkomuw%2Fsewer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkomuw%2Fsewer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkomuw%2Fsewer/lists"}