{"id":19555494,"url":"https://github.com/maxzz/test-pm","last_synced_at":"2026-05-12T21:32:20.154Z","repository":{"id":108303522,"uuid":"267582178","full_name":"maxzz/test-pm","owner":"maxzz","description":"Dynamic webpage to test Password Manager login and password change screens.","archived":false,"fork":false,"pushed_at":"2024-08-01T02:13:15.000Z","size":881,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-26T07:42:32.934Z","etag":null,"topics":["password-manager","tests","vuejs"],"latest_commit_sha":null,"homepage":"https://maxzz.github.io/test-pm/","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/maxzz.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-28T12:19:35.000Z","updated_at":"2024-08-01T02:13:18.000Z","dependencies_parsed_at":"2023-05-21T12:30:22.571Z","dependency_job_id":null,"html_url":"https://github.com/maxzz/test-pm","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/maxzz/test-pm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxzz%2Ftest-pm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxzz%2Ftest-pm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxzz%2Ftest-pm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxzz%2Ftest-pm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maxzz","download_url":"https://codeload.github.com/maxzz/test-pm/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxzz%2Ftest-pm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":285327645,"owners_count":27152947,"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","status":"online","status_checked_at":"2025-11-19T02:00:05.673Z","response_time":65,"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":["password-manager","tests","vuejs"],"created_at":"2024-11-11T04:34:19.433Z","updated_at":"2025-11-19T21:02:53.310Z","avatar_url":"https://github.com/maxzz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Overview\r\n\r\nThis application is designed to test the ability of password managers to handle various login / password change forms and page content changes at runtime. \r\nThe source code for this web page was created as a single HTML file with all resources embedded in it, so the file can be easily copied anywhere.\r\n\r\n![](src/assets/preview.png)\r\n\r\n## Other test pages\r\n\r\n* [test-pm-1 - original test page with mutable page content](https://github.com/maxzz/test-pm)\r\n* [test-pm-2 - test login with a different URL path under the same domain](https://github.com/maxzz/test-pm-second)\r\n* [test-pm-3 - test to match domain path names](https://github.com/maxzz/test-pm-domain-logins)\r\n\r\n## Google Design Docs\r\n\r\n[Create Amazing Password Forms](https://goo.gl/9p2vKq)\r\n\r\n[Autocomplete](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofilling-form-controls%3A-the-autocomplete-attribute) attributes help password managers to infer the purpose of a field in a form, saving them from accidentally saving or autofilling the wrong data. A little annotation can go a long way: some common values for text fields are “username”, “current-password” (login forms and change password forms) and “new-password” (registration and change password forms). See a [detailed write-up](https://www.chromium.org/developers/design-documents/form-styles-that-chromium-understands) with examples.\r\n\r\nFields that are not passwords, but should be obscured, such as credit card numbers, may also have a type=\"password\" attribute, but should contain the relevant autocomplete attribute, such as \"cc-number\" or \"cc-csc\".\r\n\r\n#### Examples: Password Form Styles that Chromium Understands\r\n[Password Form Styles that Chromium Understands](https://www.chromium.org/developers/design-documents/form-styles-that-chromium-understands)\r\n\r\n#### Autofill Examples\r\n\r\n[Help users checkout faster with Autofill](https://developers.google.com/web/updates/2015/06/checkout-faster-with-autofill)\r\n\r\n## W3C Autocomplete\r\n\r\n[4.10.18.7.1 Autofilling form controls: the autocomplete attribute](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofilling-form-controls%3A-the-autocomplete-attribute)\r\n\r\nUser agents sometimes have features for helping users fill forms in, for example prefilling the user's address based on earlier user input. The autocomplete content attribute can be used to hint to the user agent how to, or indeed whether to, provide such a feature.\r\n\r\n#### Account Chooser and Email First\r\n\r\n[Email First](https://developers.google.com/identity/toolkit/web/account-chooser#email_first)\r\n\r\n#### Password Generation\r\n\r\n[Password Generation](https://www.chromium.org/developers/design-documents/password-generation)\r\n\r\n#### OS X Password Manager/Keychain Integration\r\n\r\n[OS X Password Manager/Keychain Integration](https://www.chromium.org/developers/design-documents/os-x-password-manager-keychain-integration)\r\n\r\nNote: As of version 45, the password manager is no longer integrated with Keychain, since the interoperability goal discussed in the Background section is no longer possible. This document is here for historical purposes only.\r\n\r\n[Issue 466638: Remove OS X Keychain integration for saved passwords](https://bugs.chromium.org/p/chromium/issues/detail?id=466638)\r\n\r\nStarting in OS X 10.9, Apple introduced the iCloud Keychain. This manifests itself as the “Local Items” keychain in Keychain Access. Items in this keychain are only accessible to applications with the keychain-access-groups entitlement [1][2]. This, like other iCloud entitlements, is “available only to apps submitted to the App Store or to the Mac App Store” [3].\r\n\r\n## Vue 3 notes\r\n\r\n[jsfiddle: \\$emit and \\$on events](https://jsfiddle.net/tiagomatosweb/vqtnpyzw/) \u003c- started with\r\n[Vue 3: Start Using it Today](https://www.vuemastery.com/blog/vue-3-start-using-it-today/)\r\n\r\n* [ ] TODO: Firefox is grabbing credentials when value is changed (has -\u003e clear)\r\n\r\n```js\r\n[...$0.children].map((_) =\u003e _.value)\r\n\r\n    // activated only when somebody asked\r\n    computed: {\r\n        allData: function() {\r\n            let q = this.opt_hasUsername;\r\n            let s = JSON.stringify(this.$data);\r\n            console.log(s + q);\r\n        }\r\n    },\r\n\r\n```\r\n\r\n### Development\r\n\r\nThis app does not use any bundlers (just for fun, because we can) \r\nand uses Vue 2 to build components at runtime. \r\nJust open the `Live Server` on `testcase16-password-change.html` and \r\nrun the `Watch Sass` VSCode extension.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxzz%2Ftest-pm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxzz%2Ftest-pm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxzz%2Ftest-pm/lists"}