{"id":13552719,"url":"https://github.com/voxpelli/node-webmention-testpinger","last_synced_at":"2025-04-06T20:43:51.136Z","repository":{"id":12956708,"uuid":"15634993","full_name":"voxpelli/node-webmention-testpinger","owner":"voxpelli","description":"A tool to ping your site with a variety of real world WebMentions","archived":false,"fork":false,"pushed_at":"2025-03-29T04:23:25.000Z","size":102,"stargazers_count":47,"open_issues_count":10,"forks_count":5,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-29T05:22:21.653Z","etag":null,"topics":["cli","indieweb","microformats","test-suite","webmention"],"latest_commit_sha":null,"homepage":null,"language":"HTML","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/voxpelli.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["voxpelli"]}},"created_at":"2014-01-04T16:06:33.000Z","updated_at":"2025-01-07T22:27:39.000Z","dependencies_parsed_at":"2024-01-14T15:23:45.546Z","dependency_job_id":"b252e492-301d-4de2-963e-1e8da2842663","html_url":"https://github.com/voxpelli/node-webmention-testpinger","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpelli%2Fnode-webmention-testpinger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpelli%2Fnode-webmention-testpinger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpelli%2Fnode-webmention-testpinger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpelli%2Fnode-webmention-testpinger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/voxpelli","download_url":"https://codeload.github.com/voxpelli/node-webmention-testpinger/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247550641,"owners_count":20956984,"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":["cli","indieweb","microformats","test-suite","webmention"],"created_at":"2024-08-01T12:02:08.427Z","updated_at":"2025-04-06T20:43:51.113Z","avatar_url":"https://github.com/voxpelli.png","language":"HTML","funding_links":["https://github.com/sponsors/voxpelli"],"categories":["HTML","cli"],"sub_categories":[],"readme":"# WebMention Test Pinger\n\n[![npm version](https://img.shields.io/npm/v/webmention-testpinger.svg?style=flat)](https://www.npmjs.com/package/webmention-testpinger)\n[![npm downloads](https://img.shields.io/npm/dm/webmention-testpinger.svg?style=flat)](https://www.npmjs.com/package/webmention-testpinger)\n[![Module type: CJS](https://img.shields.io/badge/module%20type-cjs-brightgreen)](https://github.com/voxpelli/badges-cjs-esm)\n[![Follow @voxpelli@mastodon.social](https://img.shields.io/mastodon/follow/109247025527949675?domain=https%3A%2F%2Fmastodon.social\u0026style=social)](https://mastodon.social/@voxpelli)\n\nA tool to ping your site with a variety of [WebMentions](http://indiewebcamp.com/webmention) markup. Contains copies of a couple of real world examples of mentions that it enables you to ping locally to a development copy of your site.\n\n## Real world sites included\n\n* [AaronParecki.com](aaronparecki.com/replies/2013/09/08/1/indiewebcampuk-webmention) by [Aaron Parecki](https://github.com/aaronpk)\n* [Adactio.com](http://adactio.com/journal/6495/) by [Jeremy Keith](https://github.com/adactio)\n* [Brid.gy](http://brid.gy/) by [Ryan Barrett](https://github.com/snarfed) (Example code from [here](https://brid-gy.appspot.com/repost/twitter/pfefferle/423744359297585152/423756080376995840))\n* [notizBlog.org](https://notizblog.org/2014/01/16/bridgy-webmentions-fuer-twitter-und-facebook/) by [Matthias Pfefferle](https://github.com/pfefferle)\n* [Sandeep.io](http://www.sandeep.io/103) by [Sandeep Shetty](https://github.com/sandeepshetty) (A special [like mention](http://indiewebcamp.com/like))\n* [Tantek.com](http://tantek.com/2014/139/t1/going-homebrew-website-club-indieweb) by [Tantek Çelik](https://github.com/tantek) (A special [RSVP mention](http://indiewebcamp.com/rsvp))\n* [VoxPelli.com](http://voxpelli.com/2013/12/webmentions-for-static-pages/) by me, [Pelle Wessman](https://github.com/voxpelli/) (With an added \u0026lt;base\u0026gt; tag to resolve the avatar correctly)\n* Your site? Send a pull request with a copy of your WebMention page in the templates directory with the mention target set to \"http://example.com/webmention/target/placeholder\"\n\n## Test suites included\n\n* [checkmention](https://checkmention.appspot.com/) by [KB Sriram](https://github.com/kbsriram), includes [the two xss tests](https://github.com/kbsriram/checkmention/tree/839d52b8138d53ddb2509779e5adf873a5852e9b/src/WEB-INF/checks)\n\n## Usage on CLI\n\nFirst install from NPM:\n\n    npm install -g webmention-testpinger\n\nThen run by doing:\n\n    webmention-testpinger --endpoint=http://example.com/endpoint --target=http://example.com/target\n\nThis tool will spin up a server on port 8080 and then ping the specified WebMentions hub with a URL to that server or each real world example which will return a copy of that example with a placeholder URL replaced with the requested mention target. After all pinged mentions has been fetched it will shut down the server and finish its execution.\n\n### Options\n\nTo list all available options, run:\n\n    webmention-testpinger --help\n\n## Usage in Node.js project\n\nFirst add it from NPM:\n\n    npm install webmention-testpinger --save-dev\n\nThen require it and set it up:\n\n```javascript\nvar WebMentionTemplates = require('webmention-testpinger').WebMentionTemplates;\n\nvar templateCollection = new WebMentionTemplates();\n\ntemplateCollection.getTemplateNames().then(function (templateNames) {\n  // \"templateNames\" contains an array of the names of all available templates\n});\n\ntemplateCollection.getTemplate(templateName, templateTarget).then(function (template) {\n  // \"template\" contains the rendered HTML for the template with the name \"templateName\"\n  // and has its webmention targeted at the \"templateTarget\" target URL\n});\n```\n\n### Options\n\nOne can send an object into `new WebMentionTemplates()` to define some options. The possible ones are:\n\n* **templatePath** – an absolute path to a folder in which a bunch of templates can be found\n\n## Requirements for CLI\n\n* Node.js (with npm)\n* Local copy of the hub you want to ping\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoxpelli%2Fnode-webmention-testpinger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvoxpelli%2Fnode-webmention-testpinger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoxpelli%2Fnode-webmention-testpinger/lists"}