{"id":18782958,"url":"https://github.com/webex/web-capabilities","last_synced_at":"2025-04-13T12:09:05.141Z","repository":{"id":151654233,"uuid":"623133753","full_name":"webex/web-capabilities","owner":"webex","description":"feature/capability detection","archived":false,"fork":false,"pushed_at":"2024-07-30T20:22:24.000Z","size":238,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-04-13T12:08:57.926Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/webex.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2023-04-03T19:05:27.000Z","updated_at":"2024-07-30T20:22:26.000Z","dependencies_parsed_at":"2024-05-21T19:44:30.581Z","dependency_job_id":"dc03144d-29cb-4cd8-a8f3-76648c4468fd","html_url":"https://github.com/webex/web-capabilities","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webex%2Fweb-capabilities","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webex%2Fweb-capabilities/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webex%2Fweb-capabilities/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webex%2Fweb-capabilities/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webex","download_url":"https://codeload.github.com/webex/web-capabilities/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710433,"owners_count":21149190,"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":"2024-11-07T20:37:36.050Z","updated_at":"2025-04-13T12:09:05.118Z","avatar_url":"https://github.com/webex.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# web-capabilities\n\nA library to check Webex feature capabilities for web clients.\n\n# Example\n\nUse the `WebCapabilities` class to check whether the machine is capable of certain features.\n\n```javascript\nimport { CapabilityState, WebCapabilities } from '@webex/web-capabilities';\n\nif (WebCapabilities.isCapableOfBackgroundNoiseRemoval() === CapabilityState.CAPABLE) {\n  console.log('This machine is capable of background noise removal!');\n}\n```\n\nUse the `BrowserInfo` class to check certain details about the browser.\n\n```javascript\nimport { BrowserInfo } from '@webex/web-capabilities';\n\nif (BrowserInfo.isChrome() \u0026\u0026 BrowserInfo.isSubVersionOf('110')) {\n  console.log('This browser is Chrome version 110!');\n}\n```\n\nUse the `CpuInfo` class to check certain details about the CPU.\n\n```javascript\nimport { CpuInfo } from '@webex/web-capabilities';\n\nconst logicalCores = CpuInfo.getNumLogicalCores();\n\nif (logicalCores) {\n    console.log(`Number of logical CPU cores: ${logicalCores}`);\n}\n```\n\n\n# Setup\n\n1. Run `yarn` to install dependencies.\n2. Run `yarn prepare` to prepare dependencies.\n3. Run `yarn watch` to build and watch for updates.\n4. Run `yarn test` to build, run tests, lint, and run test coverage.\n\n## Visual Studio Code\n\nInstall the recommended extensions when first opening the workspace (there should be a prompt). These plugins will help maintain high code quality and consistency across the project.\n\n---\n\n**NOTE**: VS Code is setup to apply formatting and linting rules on save (Prettier runs first, then ESLint). The rules applied are defined in [settings.json](.vscode/settings.json).\n\n---\n\n### Extensions\n\n- [Code Spell (streetsidesoftware.code-spell-checker)](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker)\n- [ESLint (dbaeumer.vscode-eslint)](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint)\n- [Format Code Action (rohit-gohri.format-code-action)](https://marketplace.visualstudio.com/items?itemName=rohit-gohri.format-code-action)\n- [GitLens (eamodio.gitlens)](https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens)\n- [Prettier (esbenp.prettier-vscode)](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebex%2Fweb-capabilities","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebex%2Fweb-capabilities","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebex%2Fweb-capabilities/lists"}