{"id":372230,"url":"https://github.com/mickhansen/dottie.js","last_synced_at":"2026-08-26T10:06:08.163Z","repository":{"id":3549872,"uuid":"4610476","full_name":"mickhansen/dottie.js","owner":"mickhansen","description":"Fast and safe nested object access and manipulation in JavaScript","archived":true,"fork":false,"pushed_at":"2026-04-05T13:23:27.000Z","size":9234,"stargazers_count":256,"open_issues_count":4,"forks_count":26,"subscribers_count":9,"default_branch":"master","last_synced_at":"2026-08-20T07:12:04.268Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/mickhansen.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":"2012-06-09T21:13:06.000Z","updated_at":"2026-04-10T19:09:52.000Z","dependencies_parsed_at":"2024-11-27T22:02:04.701Z","dependency_job_id":"ec9d60bd-3adf-44aa-b955-1f05b7b5f844","html_url":"https://github.com/mickhansen/dottie.js","commit_stats":{"total_commits":110,"total_committers":20,"mean_commits":5.5,"dds":0.5727272727272728,"last_synced_commit":"b48e22714aae4489ea6276452f22cc61980ba5a4"},"previous_names":["innofluence/dottie.js"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/mickhansen/dottie.js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/sbom","scorecard":{"id":642275,"data":{"date":"2025-08-11","repo":{"name":"github.com/mickhansen/dottie.js","commit":"a72eb993212939d60a2801843ce3e968dfc5c6a6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 9/27 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:7: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 12 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":5,"reason":"5 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-4q6p-r6v2-jvc5","Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55","Warn: Project is vulnerable to: GHSA-76p7-773f-r4q5"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-21T11:08:29.587Z","repository_id":3549872,"created_at":"2025-08-21T11:08:29.587Z","updated_at":"2025-08-21T11:08:29.587Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36897724,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"online","status_checked_at":"2026-08-25T02:00:06.831Z","response_time":104,"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"}},"owner":{"login":"mickhansen","name":"Mick Hansen","uuid":"699049","kind":"user","description":"","email":"","website":null,"location":"Copenhagen, Denmark","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/699049?v=4","repositories_count":23,"last_synced_at":"2023-04-09T12:16:07.108Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/mickhansen","funding_links":[],"total_stars":2583,"followers":null,"following":null,"created_at":"2022-11-02T16:25:35.187Z","updated_at":"2024-03-25T18:33:38.784Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen/repositories"},"packages":[{"id":13743059,"name":"node-dottie","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T05:33:49.785Z","latest_release_published_at":"2026-02-13T05:33:49.785Z","latest_release_number":"2.0.2-1","last_synced_at":"2026-03-13T09:24:22.777Z","created_at":"2026-02-13T05:33:49.601Z","updated_at":"2026-03-13T09:30:27.536Z","registry_url":"https://launchpad.net/ubuntu/+source/node-dottie","install_command":"apt-get install node-dottie","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-dottie","standards_version":"4.4.1","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 12), mocha \u003c!nocheck\u003e, pkg-js-tools","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T05:33:50.295Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-dottie?arch=source\u0026distro=ubuntu-20.04\u0026repository_url=https://launchpad.net/ubuntu/focal","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"ubuntu-20.04","url":"https://launchpad.net/ubuntu/focal","ecosystem":"ubuntu","default":false,"packages_count":30789,"maintainers_count":0,"namespaces_count":4,"keywords_count":1429,"github":"ubuntu","metadata":{"codename":"focal","funded_packages_count":759},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:47.233Z","updated_at":"2026-08-25T05:06:53.666Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/namespaces"}},{"id":13659328,"name":"node-dottie","ecosystem":"debian","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T08:14:54.250Z","latest_release_published_at":"2026-02-12T08:14:54.250Z","latest_release_number":"2.0.6+~2.0.5-2","last_synced_at":"2026-08-02T03:08:56.774Z","created_at":"2026-02-12T08:14:54.092Z","updated_at":"2026-08-02T03:08:56.774Z","registry_url":"https://tracker.debian.org/pkg/node-dottie","install_command":"apt-get install node-dottie","documentation_url":"https://packages.debian.org/trixie/node-dottie","metadata":{"component":"main","architecture":"all","priority":"extra","binary":"node-dottie","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), dh-sequence-nodejs, mocha \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-12T08:14:54.838Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/node-dottie?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"debian-13","url":"https://packages.debian.org/trixie","ecosystem":"debian","default":false,"packages_count":38024,"maintainers_count":0,"namespaces_count":4,"keywords_count":1985,"github":"debian","metadata":{"codename":"trixie","funded_packages_count":1687},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-08-25T05:04:56.023Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/namespaces"}},{"id":13793723,"name":"node-dottie","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T15:59:48.819Z","latest_release_published_at":"2026-02-13T15:59:48.819Z","latest_release_number":"2.0.6+~2.0.5-2","last_synced_at":"2026-03-13T16:22:28.858Z","created_at":"2026-02-13T15:59:48.639Z","updated_at":"2026-03-13T16:22:28.858Z","registry_url":"https://launchpad.net/ubuntu/+source/node-dottie","install_command":"apt-get install node-dottie","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-dottie","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), dh-sequence-nodejs, mocha \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T15:59:49.472Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-dottie?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.10","url":"https://launchpad.net/ubuntu/mantic","ecosystem":"ubuntu","default":false,"packages_count":36642,"maintainers_count":0,"namespaces_count":4,"keywords_count":2213,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":1339},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-08-25T05:06:51.033Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/namespaces"}},{"id":13399222,"name":"node-dottie","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T05:28:18.069Z","latest_release_published_at":"2026-02-06T05:28:18.069Z","latest_release_number":"2.0.6+~2.0.5-2","last_synced_at":"2026-03-06T05:36:24.650Z","created_at":"2026-02-06T05:28:17.778Z","updated_at":"2026-03-06T06:41:47.879Z","registry_url":"https://launchpad.net/ubuntu/+source/node-dottie","install_command":"apt-get install node-dottie","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-dottie","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), dh-sequence-nodejs, mocha \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-dottie?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.04","url":"https://launchpad.net/ubuntu/noble","ecosystem":"ubuntu","default":true,"packages_count":37306,"maintainers_count":0,"namespaces_count":4,"keywords_count":1697,"github":"ubuntu","metadata":{"codename":"noble","funded_packages_count":1245},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-08-25T05:06:49.291Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/namespaces"}},{"id":13522675,"name":"node-dottie","ecosystem":"debian","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-10T21:59:48.762Z","latest_release_published_at":"2026-02-10T21:59:48.762Z","latest_release_number":"2.0.2-1+deb11u1","last_synced_at":"2026-03-14T01:23:09.322Z","created_at":"2026-02-10T21:59:48.571Z","updated_at":"2026-03-14T01:23:09.323Z","registry_url":"https://tracker.debian.org/pkg/node-dottie","install_command":"apt-get install node-dottie","documentation_url":"https://packages.debian.org/bullseye/node-dottie","metadata":{"component":"main","architecture":"all","priority":"extra","binary":"node-dottie","standards_version":"4.4.1","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 12), mocha \u003c!nocheck\u003e, pkg-js-tools","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-11T14:23:00.696Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/node-dottie?arch=source\u0026distro=debian-11\u0026repository_url=https://packages.debian.org/bullseye","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"debian-11","url":"https://packages.debian.org/bullseye","ecosystem":"debian","default":false,"packages_count":31268,"maintainers_count":0,"namespaces_count":3,"keywords_count":759,"github":"debian","metadata":{"codename":"bullseye","funded_packages_count":805},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.702Z","updated_at":"2026-08-25T05:06:44.833Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/namespaces"}},{"id":13459282,"name":"node-dottie","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-09T06:05:23.970Z","latest_release_published_at":"2026-02-09T06:05:23.970Z","latest_release_number":"2.0.6+~2.0.5-2","last_synced_at":"2026-03-09T06:22:36.857Z","created_at":"2026-02-09T06:05:23.041Z","updated_at":"2026-03-09T06:34:04.612Z","registry_url":"https://launchpad.net/ubuntu/+source/node-dottie","install_command":"apt-get install node-dottie","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-dottie","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), dh-sequence-nodejs, mocha \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-dottie?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.10","url":"https://launchpad.net/ubuntu/oracular","ecosystem":"ubuntu","default":false,"packages_count":38437,"maintainers_count":0,"namespaces_count":4,"keywords_count":1440,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":1322},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-08-25T05:04:58.025Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/namespaces"}},{"id":1629000,"name":"dottie","ecosystem":"npm","description":"Fast and safe nested object access and manipulation in JavaScript","homepage":"https://github.com/mickhansen/dottie.js#readme","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":[],"namespace":null,"versions_count":26,"first_release_published_at":"2013-02-15T09:15:31.644Z","latest_release_published_at":"2026-02-24T15:33:48.458Z","latest_release_number":"2.0.7","last_synced_at":"2026-08-24T09:58:47.959Z","created_at":"2022-04-09T12:30:19.150Z","updated_at":"2026-08-26T03:54:29.521Z","registry_url":"https://www.npmjs.com/package/dottie","install_command":"npm install dottie","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"latest":"2.0.7"},"contentPolicy":null},"repo_metadata":{"id":3549872,"uuid":"4610476","full_name":"mickhansen/dottie.js","owner":"mickhansen","description":"Fast and safe nested object access and manipulation in JavaScript","archived":true,"fork":false,"pushed_at":"2026-04-05T13:23:27.000Z","size":9234,"stargazers_count":256,"open_issues_count":4,"forks_count":26,"subscribers_count":9,"default_branch":"master","last_synced_at":"2026-08-20T07:12:04.268Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/mickhansen.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":"2012-06-09T21:13:06.000Z","updated_at":"2026-04-10T19:09:52.000Z","dependencies_parsed_at":"2024-11-27T22:02:04.701Z","dependency_job_id":"ec9d60bd-3adf-44aa-b955-1f05b7b5f844","html_url":"https://github.com/mickhansen/dottie.js","commit_stats":{"total_commits":110,"total_committers":20,"mean_commits":5.5,"dds":0.5727272727272728,"last_synced_commit":"b48e22714aae4489ea6276452f22cc61980ba5a4"},"previous_names":["innofluence/dottie.js"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/mickhansen/dottie.js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/sbom","scorecard":{"id":642275,"data":{"date":"2025-08-11","repo":{"name":"github.com/mickhansen/dottie.js","commit":"a72eb993212939d60a2801843ce3e968dfc5c6a6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 9/27 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:7: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 12 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":5,"reason":"5 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-4q6p-r6v2-jvc5","Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55","Warn: Project is vulnerable to: GHSA-76p7-773f-r4q5"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-21T11:08:29.587Z","repository_id":3549872,"created_at":"2025-08-21T11:08:29.587Z","updated_at":"2025-08-21T11:08:29.587Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36897724,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"online","status_checked_at":"2026-08-25T02:00:06.831Z","response_time":104,"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"},"owner_record":{"login":"mickhansen","name":"Mick Hansen","uuid":"699049","kind":"user","description":"","email":"","website":null,"location":"Copenhagen, Denmark","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/699049?v=4","repositories_count":23,"last_synced_at":"2023-04-09T12:16:07.108Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/mickhansen","funding_links":[],"total_stars":2583,"followers":null,"following":null,"created_at":"2022-11-02T16:25:35.187Z","updated_at":"2024-03-25T18:33:38.784Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen/repositories"},"tags":[{"name":"v2.0.7","sha":"334c32b80ed536522b567ee6a844caf8e5fef9c3","kind":"tag","published_at":"2026-02-24T15:32:35.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.7","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.7/manifests"},{"name":"v2.0.6","sha":"03d7ee70d66e620783074d5bb7b276231549b35d","kind":"tag","published_at":"2023-06-13T05:42:05.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.6","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.6/manifests"},{"name":"v2.0.5","sha":"13b2fb62527c311c9fc79d613ce2bd5844d6908a","kind":"tag","published_at":"2023-06-13T05:39:14.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.5","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.5/manifests"},{"name":"v2.0.4","sha":"e0c8baee4e1551b6ce63cc0b5eef18e8362482c2","kind":"tag","published_at":"2023-06-08T14:51:20.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.4","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"001ca404b71970b8288670126f13ebf4231ae200","kind":"tag","published_at":"2023-02-07T13:56:13.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.3","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"0294715412050602a26f37b1c2fd9b5fdb37ce66","kind":"tag","published_at":"2019-12-02T09:18:10.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.2","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"306dce7c588bb57037fce47cc659fa0d4dafa466","kind":"tag","published_at":"2018-10-23T09:19:51.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.1","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"93e2fa41fd1886c51fbfce2bd904e3f1d81e1902","kind":"tag","published_at":"2017-01-02T19:46:20.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.0/manifests"},{"name":"v1.1.1","sha":"94f5de38ca36555011b1e13f3d3a14665669b692","kind":"tag","published_at":"2015-12-07T12:29:29.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v1.1.1","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v1.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"d632d94d2e4af20bf8eb785fb77a04d43e793c48","kind":"tag","published_at":"2015-11-17T08:43:01.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v1.1.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"3ab5074c9a097ee886b82b3a5f664552c913d799","kind":"tag","published_at":"2015-09-19T14:16:04.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v1.0.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.0.0/manifests"},{"name":"v0.3.1","sha":"39edf9eb929c1aaf826b81570c446be577bc3111","kind":"commit","published_at":"2015-02-25T12:23:42.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.3.1","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"12aa234946c368de8a667f222100f92fc8045401","kind":"commit","published_at":"2015-02-25T11:40:17.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.3.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.0/manifests"},{"name":"v0.2.6","sha":"5a8799639622734eca4727c1cc682e5f9885d044","kind":"commit","published_at":"2014-12-23T09:21:49.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.2.6","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.2.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"a4813dbfab4356de5470acf9701b65d1cab755d5","kind":"commit","published_at":"2014-12-22T08:31:25.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.2.5","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.2.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.5/manifests"},{"name":"v0.2.0","sha":"d18980cdbee8d67d9fbcabd5450132f9b43d85f6","kind":"tag","published_at":"2014-03-10T14:03:06.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.2.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"91a14f335d1f05f8ab972491a5452d36957b5f68","kind":"tag","published_at":"2014-02-21T08:41:03.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.1.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-26T03:54:29.521Z","dependent_packages_count":257,"downloads":11538875,"downloads_period":"last-month","dependent_repos_count":161543,"rankings":{"downloads":0.11743760067363473,"dependent_repos_count":0.08661921440138591,"dependent_packages_count":0.1969750789452206,"stargazers_count":3.8987116888044993,"forks_count":4.906486254233805,"docker_downloads_count":0.058359444153605514,"average":1.5440982135353585},"purl":"pkg:npm/dottie","advisories":[{"uuid":"GSA_kwCzR0hTQS1yNW14LTZ3YzYtN2g5d84ABS3V","url":"https://github.com/advisories/GHSA-r5mx-6wc6-7h9w","title":"dottie is vulnerable to Prototype Pollution bypass via non-first path segments in set() and transform()","description":"### Summary\n\ndottie versions 2.0.4 through 2.0.6 contain an incomplete fix for CVE-2023-26132. The prototype pollution guard introduced in commit `7d3aee1` only validates the first segment of a dot-separated path, allowing an attacker to bypass the protection by placing `__proto__` at any position other than the first.\n\nBoth `dottie.set()` and `dottie.transform()` are affected.\n\n### Details\n\nThe existing guard checks only `pieces[0] === '__proto__'`. When a path like `'a.__proto__.polluted'` is used, `pieces[0]` evaluates to `'a'`, not `'__proto__'`, so the guard is bypassed.\n\nInside the traversal loop, `current['__proto__'] = {}` triggers the `__proto__` setter, replacing the intermediate object's prototype. The final value is then written onto this new prototype.\n\n**Important distinction:** This vulnerability does NOT pollute the global `Object.prototype`. It injects properties into a specific object's prototype chain. However, injected properties are invisible to `hasOwnProperty()` and `Object.keys()`, which makes them difficult to detect and can lead to authorization bypass in common coding patterns.\n\n### PoC\n```javascript\nconst dottie = require('dottie');\n\n// set() bypass\nconst obj = {};\ndottie.set(obj, 'session.__proto__.isAdmin', true);\nconsole.log(obj.session.isAdmin);                    // true\nconsole.log(({}).isAdmin);                           // undefined\nconsole.log(obj.session.hasOwnProperty('isAdmin'));  // false\n\n// transform() bypass\nconst flat = { 'user.__proto__.role': 'admin', 'user.name': 'guest' };\nconst result = dottie.transform(flat);\nconsole.log(result.user.role);                       // 'admin'\nconsole.log(({}).role);                              // undefined\n```\n\nTested on Node.js v20 and v22, dottie 2.0.6, Windows 11.\n\n### Impact\n\nThe primary risk is authorization bypass. In a typical server-side scenario where dottie is used to process user input (e.g., via Sequelize, which depends on dottie with ~1.3M weekly npm downloads), an attacker can inject properties like `isAdmin: true` into objects used for access control decisions. Since the injected property is not an own property, standard checks using `hasOwnProperty()` or `Object.keys()` will not reveal it, while property access like `if (session.isAdmin)` will return `true`.\n\nAdditionally, replacing an object's prototype via `current['__proto__'] = {}` strips all inherited methods, potentially causing TypeError exceptions and denial of service.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2026-02-26T19:54:34.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.3,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L","references":["https://github.com/mickhansen/dottie.js/security/advisories/GHSA-r5mx-6wc6-7h9w","https://nvd.nist.gov/vuln/detail/CVE-2026-27837","https://github.com/mickhansen/dottie.js/commit/7e8fa1345a4b46325f0eab8d7aeb1c4deaefdb14","https://github.com/advisories/GHSA-4gxf-g5gf-22h4","https://github.com/advisories/GHSA-r5mx-6wc6-7h9w"],"source_kind":"github","identifiers":["GHSA-r5mx-6wc6-7h9w","CVE-2026-27837"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-02-26T20:00:08.215Z","updated_at":"2026-07-23T21:03:13.278Z","epss_percentage":0.00303,"epss_percentile":0.22559,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1yNW14LTZ3YzYtN2g5d84ABS3V","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS1yNW14LTZ3YzYtN2g5d84ABS3V","packages":[{"ecosystem":"npm","package_name":"dottie","versions":[{"first_patched_version":"2.0.7","vulnerable_version_range":"\u003e= 2.0.4, \u003c= 2.0.6"}],"purl":"pkg:npm/dottie"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1yNW14LTZ3YzYtN2g5d84ABS3V/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS00Z3hmLWc1Z2YtMjJoNM4AAzxj","url":"https://github.com/advisories/GHSA-4gxf-g5gf-22h4","title":"dottie vulnerable to Prototype Pollution","description":"Versions of the package dottie before 2.0.4 are vulnerable to Prototype Pollution due to insufficient checks, via the `set()` function and the current variable in the `/dottie.js` file.","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2023-06-10T06:30:25.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://nvd.nist.gov/vuln/detail/CVE-2023-26132","https://github.com/mickhansen/dottie.js/commit/7d3aee1c9c3c842720506e131de7e181e5c8db68","https://security.snyk.io/vuln/SNYK-JS-DOTTIE-3332763","https://github.com/mickhansen/dottie.js/blob/b48e22714aae4489ea6276452f22cc61980ba5a4/dottie.js#L107","https://github.com/advisories/GHSA-4gxf-g5gf-22h4"],"source_kind":"github","identifiers":["GHSA-4gxf-g5gf-22h4","CVE-2023-26132"],"repository_url":"https://github.com/mickhansen/dottie.js","blast_radius":0.0,"created_at":"2023-06-12T19:03:27.935Z","updated_at":"2026-08-14T00:15:14.029Z","epss_percentage":0.01062,"epss_percentile":0.61557,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00Z3hmLWc1Z2YtMjJoNM4AAzxj","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS00Z3hmLWc1Z2YtMjJoNM4AAzxj","packages":[{"ecosystem":"npm","package_name":"dottie","versions":[{"first_patched_version":"2.0.4","vulnerable_version_range":"\u003c 2.0.4"}],"purl":"pkg:npm/dottie"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00Z3hmLWc1Z2YtMjJoNM4AAzxj/related_packages","related_advisories":[]}],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/dottie","docker_dependents_count":2347,"docker_downloads_count":839863822,"usage_url":"https://repos.ecosyste.ms/usage/npm/dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/dottie/dependencies","status":"deprecated","funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-25T09:35:16.966Z","issues_count":15,"pull_requests_count":29,"avg_time_to_close_issue":29252305.846153848,"avg_time_to_close_pull_request":2935303.576923077,"issues_closed_count":13,"pull_requests_closed_count":26,"pull_request_authors_count":19,"issue_authors_count":12,"avg_comments_per_issue":2.2,"avg_comments_per_pull_request":1.8620689655172413,"merged_pull_requests_count":23,"bot_issues_count":0,"bot_pull_requests_count":4,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":1416.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":1.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/issues","maintainers":[{"login":"mickhansen","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mickhansen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/dottie/codemeta","maintainers":[{"uuid":"mickhansen","login":"mickhansen","name":null,"email":"mick.kasper.hansen@gmail.com","url":null,"packages_count":39,"html_url":"https://www.npmjs.com/~mickhansen","role":null,"created_at":"2022-11-12T02:08:33.751Z","updated_at":"2022-11-12T02:08:33.751Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/mickhansen/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5786797,"maintainers_count":1238458,"namespaces_count":422153,"keywords_count":882770,"github":"npm","metadata":{"funded_packages_count":190126,"rate_limit":2},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2026-08-25T05:03:20.950Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/namespaces"}},{"id":13428362,"name":"node-dottie","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-07T15:31:41.961Z","latest_release_published_at":"2026-02-07T15:31:41.961Z","latest_release_number":"2.0.2-4","last_synced_at":"2026-03-07T15:38:21.700Z","created_at":"2026-02-07T15:31:41.705Z","updated_at":"2026-03-07T16:02:49.145Z","registry_url":"https://launchpad.net/ubuntu/+source/node-dottie","install_command":"apt-get install node-dottie","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-dottie","standards_version":"4.6.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), mocha \u003c!nocheck\u003e, dh-sequence-nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-dottie?arch=source\u0026distro=ubuntu-22.04\u0026repository_url=https://launchpad.net/ubuntu/jammy","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"ubuntu-22.04","url":"https://launchpad.net/ubuntu/jammy","ecosystem":"ubuntu","default":false,"packages_count":34289,"maintainers_count":0,"namespaces_count":4,"keywords_count":1498,"github":"ubuntu","metadata":{"codename":"jammy","funded_packages_count":976},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:46.486Z","updated_at":"2026-08-25T05:06:47.665Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/namespaces"}},{"id":13558137,"name":"node-dottie","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T04:43:31.545Z","latest_release_published_at":"2026-02-11T04:43:31.545Z","latest_release_number":"2.0.2-4","last_synced_at":"2026-03-11T22:45:00.786Z","created_at":"2026-02-11T04:43:31.295Z","updated_at":"2026-03-11T22:45:00.786Z","registry_url":"https://launchpad.net/ubuntu/+source/node-dottie","install_command":"apt-get install node-dottie","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-dottie","standards_version":"4.6.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), mocha \u003c!nocheck\u003e, dh-sequence-nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-11T14:49:55.147Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-dottie?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.04","url":"https://launchpad.net/ubuntu/lunar","ecosystem":"ubuntu","default":false,"packages_count":36116,"maintainers_count":0,"namespaces_count":4,"keywords_count":999,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":1108},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-08-25T05:06:52.544Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/namespaces"}},{"id":13701368,"name":"node-dottie","ecosystem":"debian","description":null,"homepage":"https://github.com/mickhansen/dottie.js","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T21:09:52.229Z","latest_release_published_at":"2026-02-12T21:09:52.229Z","latest_release_number":"2.0.2-4+deb12u1","last_synced_at":"2026-07-27T07:03:00.861Z","created_at":"2026-02-12T21:09:52.012Z","updated_at":"2026-07-27T07:03:00.862Z","registry_url":"https://tracker.debian.org/pkg/node-dottie","install_command":"apt-get install node-dottie","documentation_url":"https://packages.debian.org/bookworm/node-dottie","metadata":{"component":"main","architecture":"all","priority":"extra","binary":"node-dottie","standards_version":"4.6.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"chai \u003c!nocheck\u003e, debhelper-compat (= 13), mocha \u003c!nocheck\u003e, dh-sequence-nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":3549872,"uuid":"4610476","full_name":"mickhansen/dottie.js","owner":"mickhansen","description":"Fast and safe nested object access and manipulation in JavaScript","archived":false,"fork":false,"pushed_at":"2024-07-17T05:13:54.000Z","size":9217,"stargazers_count":257,"open_issues_count":4,"forks_count":25,"subscribers_count":9,"default_branch":"master","last_synced_at":"2026-01-24T10:37:57.818Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/mickhansen.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}},"created_at":"2012-06-09T21:13:06.000Z","updated_at":"2025-11-06T13:49:40.000Z","dependencies_parsed_at":"2024-11-27T22:02:04.701Z","dependency_job_id":"d7a98ee0-edbf-49a1-857a-e0a29e36ede1","html_url":"https://github.com/mickhansen/dottie.js","commit_stats":{"total_commits":110,"total_committers":20,"mean_commits":5.5,"dds":0.5727272727272728,"last_synced_commit":"b48e22714aae4489ea6276452f22cc61980ba5a4"},"previous_names":["innofluence/dottie.js"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/mickhansen/dottie.js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/sbom","scorecard":{"id":642275,"data":{"date":"2025-08-11","repo":{"name":"github.com/mickhansen/dottie.js","commit":"a72eb993212939d60a2801843ce3e968dfc5c6a6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 9/27 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:7: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 12 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":5,"reason":"5 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-4q6p-r6v2-jvc5","Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55","Warn: Project is vulnerable to: GHSA-76p7-773f-r4q5"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-21T11:08:29.587Z","repository_id":3549872,"created_at":"2025-08-21T11:08:29.587Z","updated_at":"2025-08-21T11:08:29.587Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29381103,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-12T20:34:40.886Z","status":"ssl_error","status_checked_at":"2026-02-12T20:23:00.490Z","response_time":55,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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"}},"repo_metadata_updated_at":"2026-02-12T21:09:53.196Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":2.1257109804299623,"forks_count":2.66025641025641,"docker_downloads_count":null,"average":1.1964918476715931},"purl":"pkg:deb/debian/node-dottie?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-dottie/dependencies","status":"removed","funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-19T19:59:33.539Z","issues_count":15,"pull_requests_count":27,"avg_time_to_close_issue":29252305.846153848,"avg_time_to_close_pull_request":3052659.08,"issues_closed_count":13,"pull_requests_closed_count":25,"pull_request_authors_count":18,"issue_authors_count":12,"avg_comments_per_issue":2.2,"avg_comments_per_pull_request":1.962962962962963,"merged_pull_requests_count":22,"bot_issues_count":0,"bot_pull_requests_count":4,"past_year_issues_count":0,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":1,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/issues","maintainers":[{"login":"mickhansen","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mickhansen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-dottie/codemeta","maintainers":[],"registry":{"name":"debian-12","url":"https://packages.debian.org/bookworm","ecosystem":"debian","default":true,"packages_count":34734,"maintainers_count":0,"namespaces_count":4,"keywords_count":2645,"github":"debian","metadata":{"codename":"bookworm","funded_packages_count":1237},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-08-25T05:06:43.662Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/namespaces"}},{"id":22505,"name":"dottie","ecosystem":"bower","description":null,"homepage":"","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/mickhansen/dottie.js","keywords_array":[],"namespace":null,"versions_count":17,"first_release_published_at":"2014-02-21T08:41:03.000Z","latest_release_published_at":"2026-02-24T15:32:35.000Z","latest_release_number":"v2.0.7","last_synced_at":"2026-03-24T01:15:26.329Z","created_at":"2022-04-04T21:22:45.310Z","updated_at":"2026-08-17T13:48:10.751Z","registry_url":null,"install_command":"bower install dottie","documentation_url":null,"metadata":{},"repo_metadata":{"id":3549872,"uuid":"4610476","full_name":"mickhansen/dottie.js","owner":"mickhansen","description":"Fast and safe nested object access and manipulation in JavaScript","archived":true,"fork":false,"pushed_at":"2026-04-05T13:23:27.000Z","size":9234,"stargazers_count":256,"open_issues_count":4,"forks_count":26,"subscribers_count":9,"default_branch":"master","last_synced_at":"2026-07-28T01:23:23.080Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/mickhansen.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":"2012-06-09T21:13:06.000Z","updated_at":"2026-04-10T19:09:52.000Z","dependencies_parsed_at":"2024-11-27T22:02:04.701Z","dependency_job_id":"d7a98ee0-edbf-49a1-857a-e0a29e36ede1","html_url":"https://github.com/mickhansen/dottie.js","commit_stats":{"total_commits":110,"total_committers":20,"mean_commits":5.5,"dds":0.5727272727272728,"last_synced_commit":"b48e22714aae4489ea6276452f22cc61980ba5a4"},"previous_names":["innofluence/dottie.js"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/mickhansen/dottie.js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/sbom","scorecard":{"id":642275,"data":{"date":"2025-08-11","repo":{"name":"github.com/mickhansen/dottie.js","commit":"a72eb993212939d60a2801843ce3e968dfc5c6a6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 9/27 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:7: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/mickhansen/dottie.js/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 12 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":5,"reason":"5 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-4q6p-r6v2-jvc5","Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55","Warn: Project is vulnerable to: GHSA-76p7-773f-r4q5"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-21T11:08:29.587Z","repository_id":3549872,"created_at":"2025-08-21T11:08:29.587Z","updated_at":"2025-08-21T11:08:29.587Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36141856,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-01T02:00:05.789Z","response_time":100,"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"},"owner_record":{"login":"mickhansen","name":"Mick Hansen","uuid":"699049","kind":"user","description":"","email":"","website":null,"location":"Copenhagen, Denmark","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/699049?v=4","repositories_count":23,"last_synced_at":"2023-04-09T12:16:07.108Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/mickhansen","funding_links":[],"total_stars":2583,"followers":null,"following":null,"created_at":"2022-11-02T16:25:35.187Z","updated_at":"2024-03-25T18:33:38.784Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mickhansen/repositories"},"tags":[{"name":"v2.0.7","sha":"334c32b80ed536522b567ee6a844caf8e5fef9c3","kind":"tag","published_at":"2026-02-24T15:32:35.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.7","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.7/manifests"},{"name":"v2.0.6","sha":"03d7ee70d66e620783074d5bb7b276231549b35d","kind":"tag","published_at":"2023-06-13T05:42:05.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.6","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.6/manifests"},{"name":"v2.0.5","sha":"13b2fb62527c311c9fc79d613ce2bd5844d6908a","kind":"tag","published_at":"2023-06-13T05:39:14.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.5","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.5/manifests"},{"name":"v2.0.4","sha":"e0c8baee4e1551b6ce63cc0b5eef18e8362482c2","kind":"tag","published_at":"2023-06-08T14:51:20.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.4","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"001ca404b71970b8288670126f13ebf4231ae200","kind":"tag","published_at":"2023-02-07T13:56:13.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.3","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"0294715412050602a26f37b1c2fd9b5fdb37ce66","kind":"tag","published_at":"2019-12-02T09:18:10.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.2","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"306dce7c588bb57037fce47cc659fa0d4dafa466","kind":"tag","published_at":"2018-10-23T09:19:51.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.1","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"93e2fa41fd1886c51fbfce2bd904e3f1d81e1902","kind":"tag","published_at":"2017-01-02T19:46:20.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v2.0.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v2.0.0/manifests"},{"name":"v1.1.1","sha":"94f5de38ca36555011b1e13f3d3a14665669b692","kind":"tag","published_at":"2015-12-07T12:29:29.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v1.1.1","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v1.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"d632d94d2e4af20bf8eb785fb77a04d43e793c48","kind":"tag","published_at":"2015-11-17T08:43:01.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v1.1.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"3ab5074c9a097ee886b82b3a5f664552c913d799","kind":"tag","published_at":"2015-09-19T14:16:04.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v1.0.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v1.0.0/manifests"},{"name":"v0.3.1","sha":"39edf9eb929c1aaf826b81570c446be577bc3111","kind":"commit","published_at":"2015-02-25T12:23:42.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.3.1","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"12aa234946c368de8a667f222100f92fc8045401","kind":"commit","published_at":"2015-02-25T11:40:17.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.3.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.3.0/manifests"},{"name":"v0.2.6","sha":"5a8799639622734eca4727c1cc682e5f9885d044","kind":"commit","published_at":"2014-12-23T09:21:49.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.2.6","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.2.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"a4813dbfab4356de5470acf9701b65d1cab755d5","kind":"commit","published_at":"2014-12-22T08:31:25.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.2.5","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.2.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.5/manifests"},{"name":"v0.2.0","sha":"d18980cdbee8d67d9fbcabd5450132f9b43d85f6","kind":"tag","published_at":"2014-03-10T14:03:06.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.2.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"91a14f335d1f05f8ab972491a5452d36957b5f68","kind":"tag","published_at":"2014-02-21T08:41:03.000Z","download_url":"https://codeload.github.com/mickhansen/dottie.js/tar.gz/v0.1.0","html_url":"https://github.com/mickhansen/dottie.js/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/mickhansen/dottie.js@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-17T13:48:10.750Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":37.51210619267361,"dependent_packages_count":5.144419757306443,"stargazers_count":6.80368028257278,"forks_count":9.646499173930383,"average":14.776676351620806},"purl":"pkg:bower/dottie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/bower/dottie","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/bower/dottie","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/bower/dottie/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-17T05:32:49.482Z","issues_count":15,"pull_requests_count":29,"avg_time_to_close_issue":29252305.846153848,"avg_time_to_close_pull_request":2935303.576923077,"issues_closed_count":13,"pull_requests_closed_count":26,"pull_request_authors_count":19,"issue_authors_count":12,"avg_comments_per_issue":2.2,"avg_comments_per_pull_request":1.8620689655172413,"merged_pull_requests_count":23,"bot_issues_count":0,"bot_pull_requests_count":4,"past_year_issues_count":0,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":1416.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.3333333333333333,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/issues","maintainers":[{"login":"mickhansen","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mickhansen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages/dottie/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages/dottie/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages/dottie/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages/dottie/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages/dottie/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages/dottie/codemeta","maintainers":[],"registry":{"name":"bower.io","url":"https://bower.io","ecosystem":"bower","default":true,"packages_count":70212,"maintainers_count":0,"namespaces_count":0,"keywords_count":28883,"github":"bower","metadata":{"funded_packages_count":3875},"icon_url":"https://github.com/bower.png","created_at":"2022-04-04T15:19:22.529Z","updated_at":"2026-08-25T05:07:18.820Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/bower.io/namespaces"}}],"commits":{"id":166822,"full_name":"mickhansen/dottie.js","default_branch":"master","total_commits":124,"total_committers":20,"total_bot_commits":2,"total_bot_committers":1,"mean_commits":6.2,"dds":0.22580645161290325,"past_year_total_commits":4,"past_year_total_committers":2,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":2.0,"past_year_dds":0.25,"last_synced_at":"2026-08-26T03:54:31.423Z","last_synced_commit":"24ca5e8620e2461c08d0a006c28f4d417ba479f5","created_at":"2023-03-08T02:43:49.417Z","updated_at":"2026-08-26T03:54:31.333Z","committers":[{"name":"Mick Hansen","email":"doomschild@gmail.com","login":"mickhansen","count":96},{"name":"Sascha Depold","email":"sascha@depold.com","login":"sdepold","count":6},{"name":"Sander AKA Redsandro","email":"redsandro@gmail.com","login":"Redsandro","count":3},{"name":"Scott Hillman","email":"scotth@mediarain.com","login":"scottrain","count":2},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":2},{"name":"Scott Hillman","email":"hillmanov@gmail.com","login":null,"count":1},{"name":"76embiid21","email":"74449343+76embiid21","login":"76embiid21","count":1},{"name":"Alexander Marinov","email":"ar.marinov@gmail.com","login":"amarinov","count":1},{"name":"Christian Oliff","email":"christianoliff@pm.me","login":"coliff","count":1},{"name":"Daniel Durante","email":"officedebo@gmail.com","login":"durango","count":1},{"name":"Dawson Botsford","email":"dawsonbotsford@gmail.com","login":"dawsbot","count":1},{"name":"Firoze Rakib","email":"firoze.rakib@gmail.com","login":"firoze","count":1},{"name":"Henrik Haugbølle","email":"henrikhaugboelle@live.dk","login":"henrikhaugboelle","count":1},{"name":"Jan Aagaard Meier","email":"janzeh@gmail.com","login":"janmeier","count":1},{"name":"Kevin Lin","email":"developer@kevinlin.info","login":"LINKIWI","count":1},{"name":"Levon Kirakosyan","email":"noosx.e@gmail.com","login":"noosxe","count":1},{"name":"Rob Boerman","email":"rob@robboerman.com","login":"robboerman","count":1},{"name":"Simon Schick","email":"SimonSchick","login":"SimonSchick","count":1},{"name":"Slav Ivanov","email":"murphybgbs@gmail.com","login":"slavivanov","count":1},{"name":"srinivas32","email":"70689972+srinivas32","login":"srinivas32","count":1}],"past_year_committers":[{"name":"Mick Hansen","email":"maker@mhansen.io","login":"mickhansen","count":3},{"name":"76embiid21","email":"74449343+76embiid21","login":"76embiid21","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-26T00:00:10.794Z","repositories_count":6778025,"commits_count":983176112,"contributors_count":41439624,"owners_count":1364573,"committers_count":3363305,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues":{"table":{"full_name":"mickhansen/dottie.js","html_url":"https://github.com/mickhansen/dottie.js","last_synced_at":"2026-08-19T06:32:05.266Z","status":null,"issues_count":15,"pull_requests_count":29,"avg_time_to_close_issue":29252305.846153848,"avg_time_to_close_pull_request":2935303.576923077,"issues_closed_count":13,"pull_requests_closed_count":26,"pull_request_authors_count":19,"issue_authors_count":12,"avg_comments_per_issue":2.2,"avg_comments_per_pull_request":1.8620689655172413,"merged_pull_requests_count":23,"bot_issues_count":0,"bot_pull_requests_count":4,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":1416.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":1.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"created_at":"2023-05-11T09:52:34.861Z","updated_at":"2026-08-19T06:32:05.267Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/mickhansen%2Fdottie.js/issues","issue_labels_count":{"table":{"enhancement":5,"bug":3}},"pull_request_labels_count":{"table":{"dependencies":4}},"issue_author_associations_count":{"table":{"NONE":10,"OWNER":3,"CONTRIBUTOR":2}},"pull_request_author_associations_count":{"table":{"CONTRIBUTOR":23,"NONE":6}},"issue_authors":{"table":{"mickhansen":3,"gdbtek":2,"Thomasdezeeuw":1,"SimonSchick":1,"domarmstrong":1,"kvaggelakos":1,"papb":1,"Redsandro":1,"Albert-IV":1,"cjroth":1,"TimFerrell":1,"sushantdhiman":1}},"pull_request_authors":{"table":{"sdepold":6,"dependabot[bot]":4,"hillmanov":2,"shahroq":2,"dawsbot":1,"durango":1,"76embiid21":1,"firoze":1,"coliff":1,"domarmstrong":1,"srinivas32":1,"noosxe":1,"Redsandro":1,"robboerman":1,"LINKIWI":1,"fiznool":1,"slavivanov":1,"amarinov":1,"SimonSchick":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-20T00:00:06.687Z","repositories_count":16146298,"issues_count":41503797,"pull_requests_count":132690933,"authors_count":11479600,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"}},"past_year_issue_labels_count":{"table":{}},"past_year_pull_request_labels_count":{"table":{}},"past_year_issue_author_associations_count":{"table":{}},"past_year_pull_request_author_associations_count":{"table":{"CONTRIBUTOR":1}},"past_year_issue_authors":{"table":{}},"past_year_pull_request_authors":{"table":{"76embiid21":1}},"maintainers":[{"table":{"login":"mickhansen","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mickhansen"}}],"active_maintainers":[]}},"events":{"total":{"PullRequestEvent":1,"ForkEvent":1,"WatchEvent":8,"PushEvent":1},"last_year":{"WatchEvent":1,"PushEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"npm","filepath":"package-lock.json","sha":null,"kind":"lockfile","created_at":"2022-07-28T21:18:53.900Z","updated_at":"2022-07-28T21:18:53.900Z","repository_link":"https://github.com/mickhansen/dottie.js/blob/master/package-lock.json","dependencies":[{"id":478712288,"package_name":"assertion-error","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":478712289,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":478712290,"package_name":"brace-expansion","ecosystem":"npm","requirements":"1.1.11","direct":false,"kind":"development","optional":false},{"id":478712291,"package_name":"browser-stdout","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":478712292,"package_name":"chai","ecosystem":"npm","requirements":"4.2.0","direct":false,"kind":"development","optional":false},{"id":478712293,"package_name":"check-error","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":478712294,"package_name":"commander","ecosystem":"npm","requirements":"2.15.1","direct":false,"kind":"development","optional":false},{"id":478712295,"package_name":"concat-map","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":478712296,"package_name":"debug","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":478712297,"package_name":"deep-eql","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":478712298,"package_name":"diff","ecosystem":"npm","requirements":"3.5.0","direct":false,"kind":"development","optional":false},{"id":478712299,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":478712300,"package_name":"fs.realpath","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":478712301,"package_name":"get-func-name","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":478712302,"package_name":"glob","ecosystem":"npm","requirements":"7.1.2","direct":false,"kind":"development","optional":false},{"id":478712303,"package_name":"growl","ecosystem":"npm","requirements":"1.10.5","direct":false,"kind":"development","optional":false},{"id":478712304,"package_name":"has-flag","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":478712305,"package_name":"he","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":478712306,"package_name":"inflight","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":478712307,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":478712308,"package_name":"minimatch","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":478712309,"package_name":"minimist","ecosystem":"npm","requirements":"0.0.8","direct":false,"kind":"development","optional":false},{"id":478712310,"package_name":"mkdirp","ecosystem":"npm","requirements":"0.5.1","direct":false,"kind":"development","optional":false},{"id":478712311,"package_name":"mocha","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":478712312,"package_name":"ms","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":478712313,"package_name":"once","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":478712314,"package_name":"path-is-absolute","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":478712315,"package_name":"pathval","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":478712316,"package_name":"supports-color","ecosystem":"npm","requirements":"5.4.0","direct":false,"kind":"development","optional":false},{"id":478712317,"package_name":"type-detect","ecosystem":"npm","requirements":"4.0.8","direct":false,"kind":"development","optional":false},{"id":478712318,"package_name":"wrappy","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false}]},{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-07-28T21:18:54.001Z","updated_at":"2022-07-28T21:18:54.001Z","repository_link":"https://github.com/mickhansen/dottie.js/blob/master/package.json","dependencies":[{"id":478712370,"package_name":"chai","ecosystem":"npm","requirements":"^4.2.0","direct":true,"kind":"development","optional":false},{"id":478712371,"package_name":"mocha","ecosystem":"npm","requirements":"^5.2.0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/test.yml","sha":null,"kind":"manifest","created_at":"2023-02-19T17:46:04.743Z","updated_at":"2023-02-19T17:46:04.743Z","repository_link":"https://github.com/mickhansen/dottie.js/blob/master/.github/workflows/test.yml","dependencies":[{"id":7793437060,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7793437061,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]}],"score":29.11900246219776,"created_at":"2026-05-14T05:09:09.679Z","updated_at":"2026-08-26T10:06:08.163Z","avatar_url":"https://github.com/mickhansen.png","language":"JavaScript","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/372230","html_url":"https://summary.ecosyste.ms/projects/372230"}