{"id":28690592,"url":"https://github.com/thunderbird/webext-schemas-generator","last_synced_at":"2025-06-14T06:05:34.355Z","repository":{"id":252054666,"uuid":"839270718","full_name":"thunderbird/webext-schemas-generator","owner":"thunderbird","description":"Script to generate the content of webext-schemas","archived":false,"fork":false,"pushed_at":"2025-06-06T16:37:27.000Z","size":145,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-06T17:25:15.734Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thunderbird.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}},"created_at":"2024-08-07T09:21:51.000Z","updated_at":"2025-06-06T16:37:29.000Z","dependencies_parsed_at":"2024-08-07T13:04:18.622Z","dependency_job_id":"5655ab84-853b-4ffc-aba6-467b7f82f0e3","html_url":"https://github.com/thunderbird/webext-schemas-generator","commit_stats":null,"previous_names":["thunderbird/webext-schemas-generator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/thunderbird/webext-schemas-generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunderbird%2Fwebext-schemas-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunderbird%2Fwebext-schemas-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunderbird%2Fwebext-schemas-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunderbird%2Fwebext-schemas-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thunderbird","download_url":"https://codeload.github.com/thunderbird/webext-schemas-generator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thunderbird%2Fwebext-schemas-generator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259768605,"owners_count":22908229,"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":[],"created_at":"2025-06-14T06:05:32.343Z","updated_at":"2025-06-14T06:05:34.348Z","avatar_url":"https://github.com/thunderbird.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Overview\n========\n\nThis script processes Mozilla WebExtension API schema files by retrieving them either\nfrom  [`hg.mozilla.org`](https://hg.mozilla.org) or from a local checkout of the Mozilla\nMercurial code repository.\n\nSchemas for APIs not supported by Thunderbird are excluded. The remaining schema files\nare then processed as follows:\n\n- `$import` keys are resolved by inlining the referenced entities.  \n- Entries not compatible with the requested manifest version are removed.  \n- URL placeholders in the form `$(url:key)[title]` within descriptions are replaced with\n  proper `\u003ca\u003e` tags.  \n- Firefox schema files are enriched using [browser-compat-data](https://github.com/mdn/browser-compat-data).  \n- Thunderbird schema files are augmented with the `api_documentation_url` property.  \n- Thunderbird annotation files are merged into the final schema output.\n\nFor convenience, the Thunderbird team provides the processed output in the [webext-schemas](https://github.com/thunderbird/webext-schemas) repository.\n\n\nInstall needed packages\n=======================\n\n```\nnpm install\n```\n\nUsage\n=====\n\n```\n   node get_thunderbird_schema_files.js \u003coptions\u003e\n```\n  \nOptions\n=======\n\n```\n   --manifest_version=number  - The requested manifest version of the schema\n                                files. Allowed values are \"2\" and \"3\".\n   --output=path              - Path of a folder to store the processed schema\n                                files. All existing files in that folder will be\n                                deleted.\n   --release=name             - The name of the Thunderbird release to get the\n                                schema files for. The files will be downloaded\n                                from hg.mozilla.org. Examples: \"central\", \"beta\"\n                                or \"esr115\". Either --release or --source has to\n                                be specified.\n   --source=path              - Path to a local checkout of a mozilla repository\n                                with a matching /comm directory. Either --release\n                                or --source has to be specified.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthunderbird%2Fwebext-schemas-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthunderbird%2Fwebext-schemas-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthunderbird%2Fwebext-schemas-generator/lists"}