- HTML 95.1%
- JavaScript 4.8%
- CSS 0.1%
| extension | ||
| icon-sketches | ||
| LICENSES | ||
| test | ||
| .git-blame-ignore-revs | ||
| .gitignore | ||
| .npmrc | ||
| .prettierignore | ||
| .prettierrc | ||
| code-of-conduct.md | ||
| package-lock.json | ||
| package.json | ||
| readme.md | ||
| REUSE.toml | ||
Rolodex
This browser extension lets you download a social network contact as a vcard file. The vcard file can then be quickly imported to you phone's contact list.
My motivation for building this was a realization that our social network services are simply middlemen which can be skipped. By curating a contact list on our phones we can quickly get in touch with new and old acquaintances. This won't help you become an influencer on social media but it'll let you be social without a man in the middle drowning you with ads or re-selling your data.
Features per Social Network Service (SNS)
- linkedin.com: The vCard file will include name, photo, title, email (if made available by user), url (linkedin profile).
We can certainly support other networks in the future. See next paragraph.
Feedback and/or development sponsorship
Send an email if you have feedback, want to contribute and/or want to sponsor future development.
Getting started with developing
Prerequisite(s): Node.js, and the browsers you want to test against.
- Run
npm install, this will install some useful tools for having livereload support while developing. - Run tests using
npm testornpm run test:watch - For rapid development you can run one or more of these commands:
npm run dev:fffor Firefox. Note: On initial setup you'll need to create a profile beforehand namedrolodex-extension-sandbox. Inside your Firefox go to the urlabout:profilesand create your profile there.npm run dev:androidto debug your extension on Firefox for Android. It's really effective but a little fiddly to setup, check out the setup guide here.npm run dev:chromefor testing against Chromium.npm run dev:htmlif you want to work solely on the extension's html popup.npm run lintwill lint the extension against web extension best practises and check for license compliance.
The package.json file has all available commands.
Tip: Firefox has a really cool site with info on how to build extensions. Be sure to check out their developer tools.
Contributing
Here's how you can contribute to this project.
Methodology
You should know that this project aims to:
- Minimize dependencies
- Minimize required permissions
- Minimize build steps
- Use an ethical license which is more restrictive than plain open source (see full license). See also: Organization for Ethical Source.
Rules
- Respect our code of conduct.
- Avoid uploading this code on Github, see giveupgithub.org for reasoning and suggested alternatives.
- Do not use Large Language Models (LLMs) to contribute code or create issues and pull requests (my reasoning).
- Format your code contributions using Prettier. Note that we sometimes use the .prettierignore file to specify certain files that should not be formatted.
- Ensure new or modified files contain updated REUSE licensing headers (quick intro).
Related reading
- https://en.wikipedia.org/wiki/VCard
- https://www.rfc-editor.org/rfc/rfc6350
- https://evertpot.com/escaping-in-vcards-and-icalendar/
Licensing
This project uses REUSE Software for licensing.
See LICENSES/ to see what licenses are used for this project. See the top section of individual files to learn what license they're released under, for the most part they're released under the Hippocratic 3.0 license. Consult the actual license text within the LICENSES/ directory for full details. See also the REUSE.toml file(s) to review licensing for files that don't support custom headers (such as image files).
To generate a complete Software Bill of Materials (SBOM), you can run the terminal command reuse spdx (requires the reuse tool).