{"id":15715374,"url":"https://github.com/cloudflare/privacypass-config","last_synced_at":"2025-10-20T04:30:27.827Z","repository":{"id":215478709,"uuid":"738242393","full_name":"cloudflare/privacypass-config","owner":"cloudflare","description":"Development and deployment CLI for Cloudflare Privacy Pass implementation","archived":false,"fork":false,"pushed_at":"2024-11-20T16:58:32.000Z","size":52,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-01-30T14:23:46.758Z","etag":null,"topics":["authentication","cli","cryptography","privacy-pass","token","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudflare.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-01-02T19:12:32.000Z","updated_at":"2024-11-20T16:58:32.000Z","dependencies_parsed_at":"2024-06-21T08:56:57.964Z","dependency_job_id":"c6e9836d-20c3-4b49-8935-28fd953a4f85","html_url":"https://github.com/cloudflare/privacypass-config","commit_stats":null,"previous_names":["cloudflare/pp-config"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fprivacypass-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fprivacypass-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fprivacypass-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fprivacypass-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudflare","download_url":"https://codeload.github.com/cloudflare/privacypass-config/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237261644,"owners_count":19281281,"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":["authentication","cli","cryptography","privacy-pass","token","typescript"],"created_at":"2024-10-03T21:41:21.377Z","updated_at":"2025-10-20T04:30:27.476Z","avatar_url":"https://github.com/cloudflare.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# privacypass-config\n\nThis service allows you to start a Privacy Pass stack locally: an attester, an origin, and an issuer. It leverages Cloudflare repositories.\n\n## Quick start\n\nWith node.js 20+\n\n* Install\n\n```shell\nnpm install\n```\n\n* Develop\n\n```shell\nnpm run start -- dev --config ./examples/git.config.yaml\n```\n\n* Deploy\n\n```shell\nnpm run start -- deploy --config ./examples/git.config.yaml --service issuer\n```\n\n* Test end-to-end (only support issuer)\n\n```shell\nnpm run start -- test --config ./examples/testE2E.config.yaml --service issuer\n```\n\n## Config\n\nExample config files are available in [./examples](./examples). You need to place one in the root folder with the name `config.yaml`. For instance, `cp examples/git.config.yaml config.yaml`.\n\nThe configuration can be a file, a url, or a git. In the case of a file or a git, the local port can be specified.\n\n```yaml\nservices:\n  attester:\n    git: \"https://github.com/cloudflare/privacypass-attester\"\n    port: \"8788\"\n  issuer:\n  \turl: \"https://pp-issuer-public.research.cloudflare.com\"\n  origin:\n  \tfile: \"./privacypass-origin\"\n  \tport: \"8789\"\n\nconfig:\n  directory: \"dist\"\n```\n\n## Features\n\n* Load the above yaml configuration\n* Clone repos if they don't exist\n* Start services on their respective port. This imply configuring them if needed (issuer needs a key rotation at start)\n\n## Next features\n\n* Started privacypass-browser-extension in a headless browser\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudflare%2Fprivacypass-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudflare%2Fprivacypass-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudflare%2Fprivacypass-config/lists"}