{"id":31831224,"url":"https://github.com/livingdocsio/varnish-purge","last_synced_at":"2026-07-09T17:31:25.468Z","repository":{"id":68391094,"uuid":"313362433","full_name":"livingdocsIO/varnish-purge","owner":"livingdocsIO","description":null,"archived":false,"fork":false,"pushed_at":"2023-12-15T05:15:49.000Z","size":49,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-19T05:03:09.787Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/livingdocsIO.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-11-16T16:29:43.000Z","updated_at":"2021-09-15T01:58:27.000Z","dependencies_parsed_at":null,"dependency_job_id":"e07f8e95-1e23-435c-8f4a-84a71f826b5e","html_url":"https://github.com/livingdocsIO/varnish-purge","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/livingdocsIO/varnish-purge","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingdocsIO%2Fvarnish-purge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingdocsIO%2Fvarnish-purge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingdocsIO%2Fvarnish-purge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingdocsIO%2Fvarnish-purge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/livingdocsIO","download_url":"https://codeload.github.com/livingdocsIO/varnish-purge/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingdocsIO%2Fvarnish-purge/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35308362,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-09T02:00:07.329Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-10-11T21:48:17.193Z","updated_at":"2026-07-09T17:31:25.454Z","avatar_url":"https://github.com/livingdocsIO.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# varnish-purge\n\nPolls document publication events from livingdocs and triggers a ban or x-cache-tags purge based on the event type.\nIt also requests the new document right after invalidating the cache, so pages get prerendered.\n\nThere are two operation modes.\n- We can use one central instance, which operates against multiple varnish instances.\n  To enable that, please use the `VARNISH_MULTIPURGE=true` environment variable.\n\n- Then in the regular operation mode, it only operates against one varnish instance,\n  so the service can be installed as sidecar to varnish.\n\n\nTo start fetching the publication events and actively ban pages based on updates, just start the process:\n```\nprocess.env.TOKEN = 'eyJhb...'\nprocess.env.API_URL = 'http://livingdocs-server:9090'\nprocess.env.VARNISH_URL = 'http://frontend:80/'\nprocess.env.FRONTEND_URL = 'https://livingdocs.io/'\nprocess.env.VARNISH_MULTIPURGE = 'true'\n\nnode index.js\n```\n\nTo precache existing pages, you can run the same process using a `--precache` argument.\nE.g. to precache all the pages published or updated within the last 2 weeks, execute that command:\n```\nnode index.js --precache --duration=2w --documentType=page\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flivingdocsio%2Fvarnish-purge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flivingdocsio%2Fvarnish-purge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flivingdocsio%2Fvarnish-purge/lists"}