Sebastian Benz
c4393862e1
update contribution guide to recommend creating issues first ( #1630 )
2026-03-04 11:30:06 +01:00
Michael Lip
e85e798a37
feat: add chrome.commands API sample ( #1629 )
...
Add a new MV3 sample demonstrating the chrome.commands API.
The sample registers custom keyboard shortcuts in the manifest,
handles command events in the service worker with notifications
and badge text feedback, and uses chrome.commands.getAll() in the
popup to display all registered shortcuts.
Closes #1126
2026-03-04 11:18:27 +01:00
Oliver Dunk
e48ebc8c4a
Remove unneeded lines in husky pre-commit hook ( #1323 )
2026-03-03 10:55:39 +00:00
Sebastian Benz
4ffe03c811
Add missing readme files. Fixes #798 ( #1616 )
2026-01-26 15:35:56 +01:00
Oliver Dunk
36f42978b8
Update Puppeteer tutorial to open popup with openPopup() ( #1613 )
...
Updates the Puppeteer tutorial to use the `action.openPopup()`
method to open the popup, and then `asPage()` to access the popup
as a page target.
A basic service worker has been added to the history sample to
give us a context to call `action.openPopup()` in.
2026-01-20 12:29:34 +01:00
Sebastian Benz
85f721f5a9
Improve Gemini samples ( #1611 )
...
* Migrate to latest version of the language model
* Update readme to better describe the sample.
* More readme updates
* Consistent API naming and format lists
2026-01-15 13:38:00 +01:00
Rin
43a7939928
security: update rollup plugins and fix potential XSS in idle sample ( #1607 )
...
* chore: update outdated rollup plugins in functional samples
* security: fix potential XSS by replacing innerHTML with safe DOM manipulation
* chore: revert package updates (let dependabot handle them)
* Add missing newline
2026-01-08 14:31:28 +00:00
Rin
99ba96e67c
security: restrict content script matches to specific domain in favicon sample ( #1610 )
...
* security: restrict content script matches to specific domain instead of <all_urls>
* docs: update README to reflect domain restriction
2026-01-08 14:11:55 +00:00
Rin
ddf0e9ae8a
security: use activeTab instead of <all_urls> to follow principle of least privilege ( #1608 )
2026-01-08 13:12:33 +00:00
Rin
5e666b9b6b
security: replace insecure innerHTML with textContent and replaceChildren ( #1609 )
2026-01-08 13:09:07 +00:00
Oliver Dunk
2862740483
Use <number>.<number> format for Google Analytics client ID ( #1606 )
...
* Use <number>.<number> format for Google Analytics client ID
With the `ENFORCE_RECOMMENDATIONS` [validation behavior](https://developers.google.com/analytics/devguides/collection/protocol/ga4/validating-events?client_type=firebase#send_events_for_validation ), Google Analytics warns about client IDs not in the <number>.<number> format.
This is not an issue in practice - that recommendation is for compatibility with existing client IDs and events are still processed with a client ID in any format. Additionally, the validation is not enabled by default.
However, this PR updates our sample code to use a consistent ID regardless to reduce noise if the validation is enabled. We use a random ID concatenated with a UNIX timestamp to match other GA client libraries.
* Run eslint
2026-01-07 15:19:18 +00:00
gmf-uah
5dad4a4879
Update README.md ( #1527 )
...
* Update README.md
Fixed the 'unpacked extension' link and revised wording for clarity
* Update README.md
Revised wording [2]
* Clarify README
Better wording on the first two sentences
2026-01-07 15:14:07 +00:00
Mike Wasserman
043d263fee
Add Prompt API trial tokens for multimodal extension samples ( #1597 )
...
* Add Prompt API trial tokens for multimodal extension samples
* Add keys and update tokens
---------
Co-authored-by: Mike Wasserman <msw@chromium.org >
2026-01-06 13:51:57 +00:00
Oliver Dunk
bce4254d71
Fix typo in devtools sample ( #1593 )
2025-12-08 17:08:43 +00:00
Oliver Dunk
11898ee8eb
Fix issue in advanced fontSettings sample ( #1523 )
...
We were using the wrong key when importing settings from a file.
Additionally, added a reload to fix an issue where the UI was not
updated when new settings were imported.
Fixes #1519
2025-08-05 18:33:39 +01:00
Vin Lim
5f6f02b924
Fix prompt format for image description in prompt array ( #1516 )
...
* Fix prompt format for image description in prompt array
* [Bug] Fix syntax error (#1515 )
* Fix syntax error
* Fix prompt format for audio transcription in session.promptStreaming
* Fix formatting
---------
Co-authored-by: Sebastian Benz <sbenz@google.com >
2025-07-29 08:42:39 +02:00
Vin Lim
eca778c3c6
Fix/format issue ( #1518 )
...
* Fix prompt format for image description in prompt array
* Fix formatting for audio scribe example
* Revert unrelated commit
2025-07-29 08:40:22 +02:00
Vin Lim
62de17bf69
[Bug] Fix syntax error ( #1515 )
...
* Fix syntax error
* Fix prompt format for audio transcription in session.promptStreaming
2025-07-28 13:28:13 +02:00
Oliver Dunk
517cf1093e
Move sw-tips tutorial to use chrome.dev ( #1505 )
...
Moves from the Glitch URL to chrome.dev, and removes the host
permissions as we now set CORS headers.
2025-07-10 15:31:51 +02:00
Oliver Dunk
b55612ae64
Handle SPA navigations in reading time example. ( #1496 )
...
In the move to new infrastructure for https://developer.chrome.com/ , the
site became an SPA which can soft navigate outside of browser
navigations. Therefore, we need to update the sample to watch for
changes to content after the content script is injected.
2025-06-23 09:34:53 +02:00
dependabot[bot]
8d6e02ae45
Bump eslint-plugin-prettier from 5.2.1 to 5.4.1 ( #1487 )
...
Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier ) from 5.2.1 to 5.4.1.
- [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases )
- [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v5.2.1...v5.4.1 )
---
updated-dependencies:
- dependency-name: eslint-plugin-prettier
dependency-version: 5.4.1
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 15:30:28 +01:00
dependabot[bot]
fb85450cc0
Bump dompurify in /functional-samples/ai.gemini-on-device ( #1448 )
...
Bumps [dompurify](https://github.com/cure53/DOMPurify ) from 3.1.6 to 3.2.4.
- [Release notes](https://github.com/cure53/DOMPurify/releases )
- [Commits](https://github.com/cure53/DOMPurify/compare/3.1.6...3.2.4 )
---
updated-dependencies:
- dependency-name: dompurify
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 15:30:01 +01:00
Chris Ho
9911b0a667
on installation open up the sidepanel for users ( #1483 )
...
* on installation open up the sidepanel for users
* ran 'npm run lint:fix'
2025-06-05 13:05:41 +01:00
Oliver Dunk
08e8c96c5f
Add linter fixes for new AI samples ( #1484 )
2025-06-02 13:46:10 +02:00
Sebastian Benz
20d36c7780
Fixes to AI samples ( #1479 )
...
* Migrate to latest summarizer API
* fix temperature to be less creative
2025-05-23 17:29:23 +02:00
Sebastian Benz
a8aec773d8
add audio scribe sample ( #1475 )
...
* add audio scribe sample
* Fix wrong parameter name
* Cleanup and more robust audio scribe
* better manifest descriptions
* demo chat app clean up
2025-05-20 08:37:50 +02:00
Sebastian Benz
a42c4121cc
Add new AI samples and update existing to use new API shape ( #1474 )
...
* Add new AI samples and update existing to use new API shape
* address comments
2025-05-16 20:43:25 +02:00
Zaif Senpai
0a67271feb
Replaced clearbit API (deprecated) ( #1453 ) ( #1456 )
...
* Replaced clearbit API (deprecated) with Google's favicon snatcher
* Updated UI designs for optional_permissions examples of both mv2 and mv3
Using chrome's build in favicon provider for optional_permissions examples
* Run linter
---------
Co-authored-by: Oliver Dunk <oliverdunk@google.com >
2025-05-08 13:59:07 +01:00
Oliver Dunk
5113e3c266
Use Puppeteer LaunchOptions for loading extensions. ( #1466 )
...
This is supported in the latest release: https://github.com/puppeteer/puppeteer/releases/tag/puppeteer-core-v24.8.0
2025-05-07 11:08:10 +01:00
Oliver Dunk
9b88cf7e14
Address feedback on mole game tutorial code. ( #1462 )
2025-04-30 17:14:43 +01:00
Oliver Dunk
aab4aa91fd
Partial fixes for sample list generator ( #1464 )
...
* Partial fixes for sample list generator
A number of fixes for the sample list generator:
- Removes a comment from one of our manifest files, as we don't
currently support JSONC.
- Ignores the `node_modules` folder since we have recently added some AI
samples with a build step.
- Adds the `aiOriginTrial` API to the list of recognised APIs.
- Updates `extension-apis.json` with the latest data from the
`chrome-types` package.
Updating recognised extension APIs still requires access to a
non-existent storage bucket, so this does not fully fix the process.
* Fix linter issue
2025-04-30 17:14:32 +01:00
Thomas Steiner
8fe3174642
Update to new API shape
2025-04-22 06:52:37 -07:00
Thomas Steiner
66672f857a
Update to new API shape
2025-04-22 06:48:54 -07:00
ljjlee
1cf9c53d4b
Add getProfileUserInfo example to sample identity extension ( #1454 )
...
* Add getProfileUserInfo example to sample identity extension
* Clarify UI
* Run prettier
---------
Co-authored-by: Oliver Dunk <oliverdunk@google.com >
2025-04-07 16:41:09 -07:00
ljjlee
b0f55f9d15
Disambiguate account/local folders sample bookmarks extension ( #1435 )
...
* Disambiguate account/local folders in the UI for sample bookmarks extension
* Code-review markups
* Fix lint issues
2025-04-03 11:05:22 +01:00
Oliver Dunk
6116518873
Add mole game tutorial ( #1433 )
...
LGTN
2025-04-02 18:10:45 +01:00
Oliver Dunk
8cf0e9a827
Fix linter error and run on PRs ( #1447 )
...
Fixes a linter error in the `identity` API sample, and updates the
linter to run on all PRs going forward.
2025-03-31 15:17:58 +02:00
ljjlee
40456c76c1
Don't assume existence of hard-coded bookmark Ids ( #1434 )
...
Instead, use the default location on the create() call.
2025-03-31 12:30:15 +01:00
ljjlee
db2d231476
Add sample Identity API extension ( #1432 )
...
* Initial copy of _archive/apps/samples/identity
* Modify to run be an extension rather than a Chrome App.
* Update extension to manifest v3
* Update README
* Remove references to chrome://identity-internals
* Use Promises rather than callbacks
See https://developer.chrome.com/docs/extensions/develop/migrate/api-calls#replace-callbacks
* Apply code-review markups.
* Apply more code-review markups
* Format with prettier
* Use Promise.catch instead of runtime.lastError
* Update screenshot
---------
Co-authored-by: Oliver Dunk <oliverdunk@google.com >
2025-03-20 14:17:39 +00:00
dependabot[bot]
8f97d22fdc
Bump cross-spawn in /functional-samples/tutorial.terminate-sw/puppeteer ( #1399 )
...
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn ) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md )
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6 )
---
updated-dependencies:
- dependency-name: cross-spawn
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 21:14:15 +01:00
dependabot[bot]
50a4cadc20
Bump eslint from 9.12.0 to 9.19.0 ( #1396 )
...
Bumps [eslint](https://github.com/eslint/eslint ) from 9.12.0 to 9.19.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v9.12.0...v9.19.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 16:59:37 +00:00
dependabot[bot]
882a24a6a5
Bump chrome-types from 0.1.312 to 0.1.335 ( #1398 )
...
Bumps [chrome-types](https://github.com/GoogleChrome/chrome-types ) from 0.1.312 to 0.1.335.
- [Commits](https://github.com/GoogleChrome/chrome-types/commits )
---
updated-dependencies:
- dependency-name: chrome-types
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 16:52:21 +00:00
dependabot[bot]
9350c3a6a4
Bump globals from 15.11.0 to 15.14.0 ( #1379 )
...
Bumps [globals](https://github.com/sindresorhus/globals ) from 15.11.0 to 15.14.0.
- [Release notes](https://github.com/sindresorhus/globals/releases )
- [Commits](https://github.com/sindresorhus/globals/compare/v15.11.0...v15.14.0 )
---
updated-dependencies:
- dependency-name: globals
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 16:51:50 +00:00
dependabot[bot]
509a5d2df5
Bump eslint-plugin-jest from 28.8.3 to 28.11.0 ( #1392 )
...
Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest ) from 28.8.3 to 28.11.0.
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases )
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md )
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v28.8.3...v28.11.0 )
---
updated-dependencies:
- dependency-name: eslint-plugin-jest
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 16:51:20 +00:00
dependabot[bot]
f475b140a4
Bump cross-spawn in /functional-samples/tutorial.puppeteer ( #1358 )
...
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn ) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md )
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6 )
---
updated-dependencies:
- dependency-name: cross-spawn
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 16:50:41 +00:00
dependabot[bot]
21b2ba2138
Bump @eslint/js from 9.12.0 to 9.19.0 ( #1397 )
...
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js ) from 9.12.0 to 9.19.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/commits/v9.19.0/packages/js )
---
updated-dependencies:
- dependency-name: "@eslint/js"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 16:50:10 +00:00
Rishi Kumar Tiwari
40e9576a29
Added README Files For Tutorials ( #1371 )
...
* tutorials redme
* update 404 URLs
* tutorials redme
* readme files
* readme
* readme
* Update functional-samples/tutorial.getting-started/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* url change not required
* Update functional-samples/tutorial.tabs-manager/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update README.md
* Update functional-samples/tutorial.tabs-manager/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update functional-samples/tutorial.hello-world/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update functional-samples/tutorial.getting-started/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update functional-samples/tutorial.hello-world/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update functional-samples/tutorial.getting-started/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update functional-samples/tutorial.getting-started/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* Update functional-samples/tutorial.getting-started/README.md
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
* foxed typo for tabGroups
* Fixed typo for tabGroups
---------
Co-authored-by: Oliver Dunk <oliver@oliverdunk.com >
2025-01-13 10:15:28 +00:00
minggeorgelei
692e9a990e
fix: the extension page will refresh after clicking the button. We need to add preventDefault to prevent form default behavior. ( #1378 )
...
Co-authored-by: George <minggeorgelei@gmail.com >
2024-12-24 21:25:29 +00:00
Justin Lulejian
5064031481
Remove notification permission from push cookbook sample ( #1365 )
...
* Remove notification permission from push cookbook sample
As of [M132] this requirement is no longer necessary (unless the extension chooses to show a notification).
[M132]: https://chromiumdash.appspot.com/commit/ed68ac786e9a276ef2b627b7e21cf0d20cc6d798
* address review comments
* Add note about minimum Chrome version
---------
Co-authored-by: Oliver Dunk <oliverdunk@google.com >
2024-12-24 21:08:12 +00:00
Oliver Dunk
600017fca8
Add environment variable for configuring storage bucket ( #1372 )
...
Adds the STORAGE_BUCKET environment variable which is used for
determining which bucket the prepare-chrome-types script loads type data
from.
2024-12-20 19:52:52 +00:00