{"id":15502321,"url":"https://github.com/miweiss/licenseplate","last_synced_at":"2025-04-14T00:43:51.941Z","repository":{"id":36985619,"uuid":"366967226","full_name":"MiWeiss/licenseplate","owner":"MiWeiss","description":"Browser extension helping to detect insufficiently licensed code.","archived":false,"fork":false,"pushed_at":"2024-12-08T00:31:02.000Z","size":34314,"stargazers_count":8,"open_issues_count":27,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T14:54:59.925Z","etag":null,"topics":["chrome-extension","edge-extension","hacktoberfest2022","license","license-checking","license-management"],"latest_commit_sha":null,"homepage":"https://miweiss.github.io/licenseplate","language":"TypeScript","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/MiWeiss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2021-05-13T07:18:43.000Z","updated_at":"2023-01-24T12:33:56.000Z","dependencies_parsed_at":"2023-10-01T01:28:17.500Z","dependency_job_id":"ec5dbfc9-e77b-4ffd-96a3-dfd5af9f002d","html_url":"https://github.com/MiWeiss/licenseplate","commit_stats":{"total_commits":91,"total_committers":5,"mean_commits":18.2,"dds":"0.21978021978021978","last_synced_commit":"542ed45910dc6d9af148cafe71212ffb559247a8"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":"chibat/chrome-extension-typescript-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiWeiss%2Flicenseplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiWeiss%2Flicenseplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiWeiss%2Flicenseplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiWeiss%2Flicenseplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MiWeiss","download_url":"https://codeload.github.com/MiWeiss/licenseplate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248804721,"owners_count":21164127,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chrome-extension","edge-extension","hacktoberfest2022","license","license-checking","license-management"],"created_at":"2024-10-02T09:09:18.401Z","updated_at":"2025-04-14T00:43:51.920Z","avatar_url":"https://github.com/MiWeiss.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg width=\"60%\" alt=\"licenseplate\" src=\"docs/logo/banner_slim.png\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\" \u003e  \nA browser extension to help you detect unpermissive licenses.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e  \n \u003ca title=\"Install through Chrome Web Store\" href=\"https://chrome.google.com/webstore/detail/licenseplate/ipjjmoankphonkjgdpgmpkgmjgjeljmd\"\u003e\u003cimg width=\"48\" alt=\"Google Chrome icon (September 2014)\" src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/a/a5/Google_Chrome_icon_%28September_2014%29.svg/512px-Google_Chrome_icon_%28September_2014%29.svg.png\"\u003e\u003c/a\u003e\n \u003ca title=\"Install through Edge Addons\" href=\"https://microsoftedge.microsoft.com/addons/detail/licenseplate/gfhcmhbpigcinkiechkibmgmllodaade\"\u003e\u003cimg width=\"48\" alt=\"Microsoft Edge logo (2019)\" src=\"https://upload.wikimedia.org/wikipedia/commons/7/7e/Microsoft_Edge_logo_%282019%29.png\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n\n## Documentation\n\n- [About](https://miweiss.github.io/licenseplate/)\n- [Installation](https://miweiss.github.io/licenseplate/installation)\n- Features (\n[Repository Alertbar](https://miweiss.github.io/licenseplate/features-gh/repo-view/),\n[Enhanced Pins](https://miweiss.github.io/licenseplate/features-gh/profile-view/),\n[Request Missing License](https://miweiss.github.io/licenseplate/features-gh/request-license/)\n)\n- [Development](https://miweiss.github.io/licenseplate/development/)\n- [Thanks](https://miweiss.github.io/licenseplate/thanks/)\n- [Legal Stuff](https://miweiss.github.io/licenseplate/legal/)\n\n\n## Details for Contributors\n\nSome high level info is given [here](https://miweiss.github.io/licenseplate/development/).\n\nDevelop using `npm run watch` and by adding / refreshing the `dist` folder as unpacked extension in the developer mode of `chrome://extension` (or similar on edge / firefox).\n\n### Project Structure\n\nThe following are the most relevant folders in this repository. Folders not listed here are hopefully self-explanatory.\n\n```\n.\n├── public                  # Static resources\n├── browser_control         # E2E tests and automated image generation for docs. Uses python \u0026 selenium\n├── dist                    # The extension (built using `npm run build`) ends up here.\n├── src                     # Source Files \n│   ├── __codegen__         # Code for static license info generation (run `npm run gen-licenses`)\n│   ├── __gen__             # License info generated by __codegen__. Don't touch, will be overridden!\n│   ├── __tests__           # Unit tests (JEST) for the few logical components of the extension\n│   ├── github              # Any code specific to github repositories\n│   └── utils               # Platform-independent utilities (e.g. caching, ignore-logic)\n└── ...\n```\n\n### Automated Stuff\n\n- **License Generation**\\\n  Once a week, the CI clones the choosealicense.com sources and uses it to re-generate our license information (`src/__gen__/licenses.json`). Changes are submitted through a PR.\\\n  The script can be run manually as `npm run gen-licenses`.\n  \n- **Documentation Image Capturing**\\\n  To keep the images in our docs up to date with recent style changes of github.com, they are re-generated once a week, or after a push to `main`, and submitted through a PR.\\\n  The script can be run manually by setting up the selenium environment (`cd browser_control`, creating and activating a python `venv` and runing `pip install -r requirements.txt`) and by then running `python gen_docs_images.py`\\\n  \u003csup\u003e\u003csub\u003eNote: Views which require a login, such as the open-issue image, are not yet automatically generated. I have to figure our a way around the 'new device email confirmation' to log into github through selenium.\u003c/sub\u003e\u003c/sup\u003e\n\n- **E2E tests**\\\n  Upon every push to `main`, and for every PR, and daily on `main` (to check for github-induced regressions) selenium E2E tests are executed.\\\n  They can be run manually by setting up the selenium environment as defined above and then run `pytest .` in the `browser_control` folder.\n\n- **Unit tests**\\\n  There's not many unit tests yet (that's still a big todo 😄), but the few which are there are run on PRs and pushed to `main`.\\\n  To run them manually, `npm run test` does the trick.\n\n- **Release**\n  Upon tagging a commit, a zip of the dist folder, `unpacked.zip` is added to the corresponding github release.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiweiss%2Flicenseplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiweiss%2Flicenseplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiweiss%2Flicenseplate/lists"}