{"id":15115653,"url":"https://github.com/soapdog/patchfox","last_synced_at":"2025-05-08T23:44:06.507Z","repository":{"id":42231384,"uuid":"117578050","full_name":"soapdog/patchfox","owner":"soapdog","description":"A client for scuttlebutt network as a Firefox WebExtension","archived":false,"fork":false,"pushed_at":"2025-03-31T21:43:18.000Z","size":218139,"stargazers_count":172,"open_issues_count":15,"forks_count":23,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-20T04:23:41.210Z","etag":null,"topics":["firefox-webextension","nodejs","scuttlebutt","webextensions"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/soapdog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://opencollective.com/patchfox"]}},"created_at":"2018-01-15T18:01:23.000Z","updated_at":"2025-03-31T21:43:23.000Z","dependencies_parsed_at":"2024-02-08T19:09:30.983Z","dependency_job_id":"7e09357d-bf31-40d3-ac29-a170fd8c87f8","html_url":"https://github.com/soapdog/patchfox","commit_stats":null,"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapdog%2Fpatchfox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapdog%2Fpatchfox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapdog%2Fpatchfox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapdog%2Fpatchfox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/soapdog","download_url":"https://codeload.github.com/soapdog/patchfox/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250633308,"owners_count":21462518,"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":["firefox-webextension","nodejs","scuttlebutt","webextensions"],"created_at":"2024-09-26T01:43:56.846Z","updated_at":"2025-05-08T23:44:06.497Z","avatar_url":"https://github.com/soapdog.png","language":"JavaScript","funding_links":["https://opencollective.com/patchfox"],"categories":["JavaScript"],"sub_categories":[],"readme":"# Patchfox\nThis is a new client for [Secure Scuttlebutt](http://scuttlebutt.nz) packaged as a Web Extension. This is a new client for [Secure Scuttlebutt](http://scuttlebutt.nz) packaged as a Web Extension for Firefox. It is available on:\n\n* [Firefox Add-ons Portal](https://addons.mozilla.org/en-US/firefox/addon/patchfox/)\n* [Chrome Web Store](https://chrome.google.com/webstore/detail/patchfox/ocanekmedfooidiahhelofknmpobdmdp?hl=en-GB\u0026authuser=0)\n\nSo if you just want to run it, that's the easiest way. Read on if you want to develop with it. Read on if you want to develop with it.\n\n## Requirements\n\n* [Firefox Developer Edition](https://www.mozilla.org/en-US/firefox/developer/) or [Firefox Nightly](https://www.mozilla.org/en-US/firefox/nightly/) (needed so that you can sideload unsigned add-ons)\n* [Scuttle Shell](https://github.com/ssbc/scuttle-shell). This is a soft requirement. You can use your own _sbot_ or even have another client such as [Patchwork](http://github.com/ssbc/patchwork) or [Patchbay](http://github.com/ssbc/patchbay) running and providing a running _sbot_. \n\n\n## Setup \u0026 Building\n\nPatchfox uses [Svelte](https://svelte.technology) and requires [NodeJS](https://nodejs.org) for development. After you have NodeJS installed, you can install the dependencies with:\n\n```\n$ npm install\n```\n\nAnd build the add-on with:\n\n```\n$ npm run clean-build\n```\n\nIf you use:\n\n```\n$ npm run clean-dev\n```\n\nIt will build the add-on using sourcemaps which makes debugging easier but can't be submit to AMO because they limit bundles to 4mb.\n\n## Running\n\nGo to [about:debugging](about:debugging) on Firefox, select `this firefox` and click to add a temporary add-on. Select the `manifest.json` file from the `dist/` folder from this repository.\n\n## Setup inside Patchfox\n\nOnce patchfox is running, it needs to learn your _remote_ and _secret_, you can just click the \"browse\" button on the setup screen and select your `.ssb/secret` file. Patchfox will use the data inside your secret file to derive your remote address. Remember to click save. \n\nAfter saving Patchfox will then try loading your public feed. You need to have a running _sbot_ for it to work.\n\n# Testing the protocol schemas\n\nAfter installing and configuring patchfox, try browsing to:\n\n[ssb://message/sha256/Acm4sCjCDGWADCw773gfQyQ03tVYmxQLhyUWET8wLPc%3D](ssb://message/sha256/Acm4sCjCDGWADCw773gfQyQ03tVYmxQLhyUWET8wLPc%3D)\n\n# Commentary, getting help\n\nIf you're interested in learning more about the technologies behind this add-on, check out:\n\n* [MDN Web Docs - WebExtensions](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/).\n* [Native Messaging API](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging)\n* [Native Messaging setup](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging#Setup)\n* [Secure Scuttlebutt Protocol Guide](https://ssbc.github.io/scuttlebutt-protocol-guide/)\n\nDon't hesitate to reach out to me at:\n\n* Scuttlebutt: `@gaQw6z30GpfsW9k8V5ED4pHrg8zmrqku24zTSAINhRg=.ed25519`\n* Mastodon: [@soapdog@toot.cafe](https://toot.cafe/@soapdog)\n* Twitter: [@soapdog](http://twitter.com/soapdog/)\n\n# Sponsorship\n\nDo you want a decentralized internet too? Are you worried about the loss of net neutrality and realized that radical decentralization is the way to fight back? If you want to make a financial contribution to help me fund development of this and other dex focused software, I would love to receive contributions through these channels:\n\n* [Patchfox Open Collective](https://opencollective.com/patchfox)\n\n\n# Artwork attribution\n\nPatchfox is using artwork by many artists including:\n\n* Art made by Angelica. \n\n* Some icons made by \u003ca href=\"https://www.flaticon.com/authors/eucalyp\" title=\"Eucalyp\"\u003eEucalyp\u003c/a\u003e from \u003ca href=\"https://www.flaticon.com/\" title=\"Flaticon\"\u003ewww.flaticon.com\u003c/a\u003e.\n\n* Artwork for the 2020.2.1 release poster was done by: Photo by Krista Stucchio on Unsplash\n\n# Third party vendored libraries\n\n* Keymage 1.1.3: http://github.com/piranha/keymage\n* ssb-custom-uri: https://git.sr.ht/~soapdog/ssb-custom-uri\n* browser-polyfill: https://github.com/mozilla/webextension-polyfill\n\n# Dependencies Licenses\n\nCheck [licenses.html](licenses.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoapdog%2Fpatchfox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoapdog%2Fpatchfox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoapdog%2Fpatchfox/lists"}