{"id":20315786,"url":"https://github.com/flipeador/secure-password-generator","last_synced_at":"2026-04-15T20:31:27.850Z","repository":{"id":252439175,"uuid":"840418835","full_name":"flipeador/secure-password-generator","owner":"flipeador","description":"Browser extension to generate secure random passwords and QR codes.","archived":false,"fork":false,"pushed_at":"2026-02-19T08:02:48.000Z","size":459,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-19T13:47:28.802Z","etag":null,"topics":["2fa-totp","browser-extension","google-chrome","gravatar","microsoft-edge","mozilla-firefox","qrcode-generator","secure-password-generator"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flipeador.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-08-09T16:57:37.000Z","updated_at":"2026-02-19T08:02:52.000Z","dependencies_parsed_at":"2024-09-18T16:11:18.235Z","dependency_job_id":null,"html_url":"https://github.com/flipeador/secure-password-generator","commit_stats":null,"previous_names":["flipeador/secure-password-generator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/flipeador/secure-password-generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipeador%2Fsecure-password-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipeador%2Fsecure-password-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipeador%2Fsecure-password-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipeador%2Fsecure-password-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flipeador","download_url":"https://codeload.github.com/flipeador/secure-password-generator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipeador%2Fsecure-password-generator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31859194,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["2fa-totp","browser-extension","google-chrome","gravatar","microsoft-edge","mozilla-firefox","qrcode-generator","secure-password-generator"],"created_at":"2024-11-14T18:21:47.507Z","updated_at":"2026-04-15T20:31:27.845Z","avatar_url":"https://github.com/flipeador.png","language":"JavaScript","funding_links":["https://www.paypal.com/donate/?hosted_button_id=DNFCXHF8NF32Y"],"categories":[],"sub_categories":[],"readme":"# Secure Password Generator\n\nBrowser extension to generate secure random passwords and QR codes.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Preview\" src=\"assets/preview.webp\"/\u003e \u003cbr/\u003e \u003cbr/\u003e\n  \u003ca href=\"https://chrome.google.com/webstore/detail/kmekigbemdeoedipbfgjhmaodbgfhidc\"\u003e\n    \u003cimg\n      alt=\"Google Chrome\"\n      src=\"https://img.shields.io/badge/Google_Chrome-E23A2D.svg?style=for-the-badge\u0026logo=googlechrome\u0026logoColor=white\"/\u003e\n  \u003c/a\u003e⠀\n  \u003ca href=\"https://addons.mozilla.org/addon/secure-password-generator-2\"\u003e\n    \u003cimg\n      alt=\"Mozilla Firefox\"\n      src=\"https://img.shields.io/badge/Mozilla_Firefox-FF7139.svg?style=for-the-badge\u0026logo=firefoxbrowser\u0026logoColor=white\"/\u003e\n  \u003c/a\u003e⠀\n  \u003ca href=\"https://microsoftedge.microsoft.com/addons/detail/einmhmdbioiaimgljjibpfmfldoclnhg\"\u003e\n    \u003cimg\n      alt=\"Microsoft Edge\"\n      src=\"https://img.shields.io/badge/Microsoft_Edge-0A85D9.svg?style=for-the-badge\"/\u003e\n  \u003c/a\u003e⠀\n  \u003ca href=\"https://www.paypal.com/donate/?hosted_button_id=DNFCXHF8NF32Y\"\u003e\n    \u003cimg\n      alt=\"PayPal Donate\"\n      src=\"https://img.shields.io/badge/PayPal-Donate-gray.svg?style=for-the-badge\u0026logo=paypal\u0026logoColor=white\u0026labelColor=003087\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003e [!NOTE]\n\u003e SMS verification is one of the weakest methods for two-factor authentication ([2FA][2fa]). [^1] [^2] \\\n\u003e If possible, use a [📱software-based authenticator][auth][^3], and disable other [2FA][2fa] alternatives.\n\n#### I'm kinda paranoid and I don't trust this extension? 🤔\n\nVisit [CRX Viewer][crxviewer], and paste the extension's URL to view the source code from the web store.\n\nThe source code is fully readable, it is not minified nor obfuscated, so that you can easily inspect it.\n\nIf you are concerned about automatic updates, [load the extension directly from the source code](#development).\n\n#### Libraries without dependencies included in the project:\n\n| File | Author | Description |\n| --- | --- | --- |\n| [`otp2fa.js`](extension/lib/otp2fa.js) | @flipeador | One-time password implementation. |\n| [`qrcode.js`](extension/lib/qrcode.js) | @davidshimjs | QR code generator for the browser. |\n\n## Secure Random Password Generator\n\nUsers can quickly generate cryptographically secure random passwords with customizable options when creating new accounts\nor updating existing passwords, ensuring better protection against hacking attempts.\nThe password can be copied to the clipboard with a single click, or just press the `Use` button and let the extension\nautomatically fill in the password field(s).\n\nEach time an option is modified, it is saved in the **session** storage. \\\nItems in the session storage area are stored in-memory and will not be persisted to disk.\n\nClick the `Save options` button to save the options in the **local** storage. \\\nItems in the local storage area stored locally and cleared when the extension is removed.\n\nThe `password` input field is never stored in the local storage.\n\nThe UI and functionality is inspired by [`@mar-kolya\\secure-password-generator`][spg].\n\n## QR Code Generator\n\nUsers can instantly create QR codes for text or authentication information given a `issuer`, `label` and `secret` value.\n\nExample: A user wants to enable 2FA with an authentication app on their smartphone. They can generate a custom QR code using the [base32][b32] encoded secret key displayed on the website. This is helpful when the default QR code provided doesn't meet the user's preferences, and the authentication app does not allow its modification.\n\n\u003e otpauth://totp/ISSUER:LABEL?secret=SECRET\u0026issuer=ISSUER\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Preview\" src=\"assets/qrcode.webp\"/\u003e\n\u003c/p\u003e\n\n1. If the `issuer` or `label` fields are empty, generates a QR code just for the text in the `secret` input field.\n2. If `label` is an email and `secret` is empty, gets the [Gravatar profile image][gravatar] for the email address using sha256.\n3. If all fields are provided, generates a QR code using the [`otpauth://totp/` URI scheme][kuf], for your [2FA][2fa] [auth app][auth].\n4. If the `secret` field is a valid [base32][b32] string, generates a [TOTP][totp] 6-digit passcode for the current time ([SHA-1][sha1], 30s).\n\nThe QR code input fields are never stored in the local storage.\n\n## Development\n\nThe unpacked extension can be loaded directly from the source code.\n\n### Google Chrome\n\n1. Open the **Extensions** page by navigating to `chrome://extensions` in a new tab.\n2. Enable the **Developer Mode** by clicking the toggle switch next to `Developer mode`.\n3. Click the **Load unpacked** button and select the [`extension`](extension) directory.\n\n### Mozilla Firefox\n\n1. Open the **This Firefox** page by navigating to `about:debugging#/runtime/this-firefox`.\n2. Click the `Load Temporary Add-on` button, and select any file in the [`extension`](extension) directory.\n3. The extension now installs, and remains installed until you restart the browser.\n\n## License\n\nThis project is licensed under the **GNU General Public License v3.0**.\nSee the [license file](LICENSE) for details.\n\n\u003c!-- Footnotes --\u003e\n[^1]: [YouTube — Enable This New Cell Phone Security Option Now! (@ThioJoe)](https://youtu.be/mUiQgAIlEIg)\n[^2]: [How-To Geek — Why You Shouldn't Use SMS for Two-Factor Authentication](https://howtogeek.com/310418/why-you-shouldnt-use-sms-for-two-factor-authentication)\n[^3]: [Aegis Authenticator](https://github.com/beemdevelopment/Aegis) (a free, secure and open source 2FA app for Android)\n\n\u003c!-- Reference Links --\u003e\n[spg]: https://github.com/mar-kolya/secure-password-generator\n[kuf]: https://github.com/google/google-authenticator/wiki/Key-Uri-Format\n\n[crxviewer]: https://crxviewer.com\n[gravatar]: https://docs.gravatar.com/api/avatars/images\n\n[2fa]: https://en.wikipedia.org/wiki/Multi-factor_authentication\n[totp]: https://en.wikipedia.org/wiki/Time-based_one-time_password\n[auth]: https://en.wikipedia.org/wiki/Authenticator\n[sha1]: https://en.wikipedia.org/wiki/SHA-1\n[b32]: https://en.wikipedia.org/wiki/Base32\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipeador%2Fsecure-password-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflipeador%2Fsecure-password-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipeador%2Fsecure-password-generator/lists"}