📦

Read&Write for Google Chrome™

🔍 Security Report Available
👥 18M+ users
📦 v2.1.770
💾 104MiB
📅 2026-02-02
View on Chrome Web Store

Chrome will indicate if you already have this installed.

Overview

Boost reading and writing confidence across all types of content and devices, in class, at work, and at home.

Tags

Make Chrome Yours/accessibility writing make chrome yours/accessibility

Privacy Practices

✅ Does not sell your data to third parties
✅ Does not use data for unrelated purposes

Security Analysis

Analyzed v2.1.770 · Feb 21, 2026 · 63 JS files · 15864 KB scanned

Permissions

activeTab contextMenus storage tabs identity identity.email scripting management offscreen search alarms gcm downloads <all_urls>

Code Patterns Detected

eval() used — can execute arbitrary code innerHTML assignment — potential XSS vector Makes HTTP requests Listens to keyboard events Potential crypto-mining code detected

External Connections

www.w3.org docs.google.com schemas.microsoft.com schemas.openxmlformats.org rwgoogle-webservices-7.texthelp.com www.googleapis.com rwgoogle-webservices-eu.texthelp.com onedrive.live.com rw4gc-simplify.texthelp.com reading.texthelp.com fluency.texthelp.com pra.texthelp.com +8 more

Package Contents 178 files · 188.2MB

📁_locales2KB
📁en_GB
{}messages.json300B
📁en_US
{}messages.json300B
📁es
{}messages.json314B
📁fr
{}messages.json300B
📁id
{}messages.json300B
📁ms
{}messages.json300B
📁pt_BR
{}messages.json241B
📁pt_PT
{}messages.json241B
📁_metadata26KB
{}verified_contents.json26KB
📁assets30KB
📁fonts27KB
🔤Figtree-Variable.woff227KB
🖼128.png2KB
🖼16.png314B
🖼48.png745B
📁dynamic947KB
📜design-system-lit.bundle.js95KBlarge
📜docgenmanager.bundle.js369KBlarge
📜gdi.bundle.js422KBlarge
📜outlines.bundle.js61KBlarge
📁errorlist6KB
🌐errorlist.html2KB
📜errorlist.js4KB
📁features171MB
📁prediction55.5MB
📁iframe55.5MB
📁prediction55.5MB
📁es-ES264KB
📁predefined_topics264KB
📄Antoni Gaudi.comboA269KB
📄Astronomia.comboA237KB
📄Dia de Muertos.comboA222KB
📄Frida Kahlo.comboA230KB
📄Futbol.comboA245KB
📄Pablo Picasso.comboA261KB
📁fr-FR270KB
📁predefined_topics270KB
📄Football.comboA258KB
📄Musee d'Orsay.comboA224KB
📄Samuel de Champlain.comboA254KB
📄Tour de France.comboA250KB
📄Vendee Globe.comboA223KB
📄Victor Hugo.comboA261KB
📁wasm54.7MB
📁resources53MB
📄prediction.pvfs53MB
📜cowriter-prediction.js128KBlarge
cowriter-prediction.wasm1MB
📜cowriter-spellchecker.js103KBlarge
cowriter-spellchecker.wasm461KB
📄manifest.json.txt121B
📜cwe-prediction-engine-proxy.js49KB
📜cwe-prediction-engine.js42KB
📜cwe-prediction-worker.js153KBlarge
🌐prediction.html359B
📜prediction.js61KBlarge
📜predictionengine.osd.js4KB
📁rewordify18.8MB
📁iframe18.8MB
📁wasm16.8MB
📄sr-rewordify.pvfs16.4MB
sr-rewordify.wasm398KB
📜rewordify-iframe-entry.js1.8MBlarge
📜rewordify-worker.js124KBlarge
🌐rewordify.html373B
📁speech146KB
📁iframe146KB
📜speech-iframe.js65KBlarge
📜speech-iframe.legacy.js81KBlarge
🌐speech.html77B
📁translator96.5MB
📁iframe96.5MB
📁models91.4MB
📁enes20.3MB
{}data.json75B
📄lex.50.50.enes.s2t.bin3.2MB
📄model.enes.intgemm.alphas.bin16.3MB
📄qualityModel.enes.bin68B
📄vocab.esen.spm806KB
📁enfr24.7MB
{}data.json75B
📄lex.50.50.enfr.s2t.bin7.5MB
📄model.enfr.intgemm.alphas.bin16.3MB
📄vocab.fren.spm812KB
📁esen20.8MB
{}data.json75B
📄lex.50.50.esen.s2t.bin3.7MB
📄model.esen.intgemm.alphas.bin16.3MB
📄vocab.esen.spm806KB
📁fren25.6MB
{}data.json75B
📄lex.50.50.fren.s2t.bin8.4MB
📄model.fren.intgemm.alphas.bin16.3MB
📄vocab.fren.spm812KB
{}registry-gz.json42KB
📁worker5.1MB
📜bergamot-translator-worker.js63KBlarge
bergamot-translator-worker.wasm5MB
{}package.json23B
📜translator-worker.js7KB
📜translator-iframe-entry.js61KBlarge
🌐translator.html361B
📁functions2KB
📜getIfFrameInitialised.js117B
📜getIfInserted.js129B
📜getIfInstalled.js758B
📜getSelector.js947B
📁i18n217KB
📁readandwrite217KB
{}da-DK.json18KB
{}en-GB.json18KB
{}en-US.json18KB
{}es-ES.json19KB
{}fr-FR.json19KB
{}hu.json19KB
{}locale-lists.json306B
{}ms-MY.json18KB
{}nb-NO.json18KB
{}nl-NL.json18KB
{}nn-NO.json18KB
{}pt-PT.json18KB
{}sv-SE.json18KB
📁mathjax10.4MB
📁WGXpath28KB
📜wgxpath.install.js28KB
📁a11y377KB
📜complexity.js18KB
📜explorer.js35KB
📜semantic-enrich.js8KB
📜sre.js316KBlarge
📁fonts340KB
🔤MathJax_AMS-Regular.woff40KB
🔤MathJax_Calligraphic-Bold.woff10KB
🔤MathJax_Calligraphic-Regular.woff9KB
🔤MathJax_Fraktur-Bold.woff22KB
🔤MathJax_Fraktur-Regular.woff21KB
🔤MathJax_Main-Bold.woff34KB
🔤MathJax_Main-Italic.woff20KB
🔤MathJax_Main-Regular.woff33KB
🔤MathJax_Math-BoldItalic.woff19KB
🔤MathJax_Math-Italic.woff19KB
🔤MathJax_Math-Regular.woff19KB
🔤MathJax_SansSerif-Bold.woff16KB
🔤MathJax_SansSerif-Italic.woff14KB
🔤MathJax_SansSerif-Regular.woff12KB
🔤MathJax_Script-Regular.woff12KB
🔤MathJax_Size1-Regular.woff6KB
🔤MathJax_Size2-Regular.woff5KB
🔤MathJax_Size3-Regular.woff3KB
🔤MathJax_Size4-Regular.woff5KB
🔤MathJax_Typewriter-Regular.woff17KB
🔤MathJax_Vector-Bold.woff1KB
🔤MathJax_Vector-Regular.woff1KB
🔤MathJax_Zero.woff1KB
📁mathmaps2.2MB
📜en.js328KBlarge
📜es.js263KBlarge
📜fr.js260KBlarge
📜mathmaps_ie.js1.1MBlarge
📜nemeth.js250KBlarge
📁sre3.8MB
📁mathmaps3.8MB
{}base.json112KB
{}ca.json289KB
{}da.json288KB
{}de.json322KB
{}en.json400KB
{}es.json292KB
{}fr.json315KB
{}hi.json430KB
{}it.json321KB
{}nb.json300KB
{}nemeth.json219KB
{}nn.json302KB
{}sv.json311KB
📁sre-mathmaps-ie2.6MB
📜mathmaps_ie.js2.6MBlarge
📜getIfMathjaxNeeded.js4KB
📜mathJaxConfig.js848B
📜mathjaxv2hook.page.js632B
📜tex-mml-chtml.js1MBlarge
📁offscreendocument2KB
📜offscreendocument.bundle.js2KB
📜offscreendocument.d.ts11B
🌐offscreendocument.html74B
📁onboarding10KB
🌐onboarding.html10KB
📜onboarding.js481B
📁pra121KB
📜pra.content.js121KBlarge
📁selectiondialog102KB
🖼RW-RGB.png68KB
🖼clever.svg1KB
🖼google.svg2KB
🖼ms.svg328B
🖼nyc.svg644B
📜selectiondialog.bundle.js31KB
🌐selectiondialog.html279B
📜content.bundle.js2.1MBlarge
📜content.error.js2KB
📜core-lib-text-mapper.umd.js119KBlarge
📜core-lib-utils.umd.js54KBlarge
📜domdistiller.js82KBlarge
📜errorlogging.page.bundle.js10KB
📜frame.bundle.js912KBlarge
📜framestart.bundle.js22KB
📜gdocs.content.bundle.js742B
📜gdocs.page.bundle.js6KB
📜google-docs-integration.js388KBlarge
📜google-docs-preloader.js6KB
📜init.bundle.js400B
{}manifest.json8KB
📜mslogin.content.bundle.js511B
📜pageerrorhandling.js173B
{}preferences_schema.json15KB
📜serviceworker.bundle.js1.2MBlarge
📜startup.bundle.js4KB
📜voicenotewatcher.bundle.js569KBlarge
📜wordonline.content.bundle.js698B
📜wordonline.page.bundle.js6KB

What This Extension Does

The Read&Write for Google Chrome extension aims to boost reading and writing confidence across various devices, in different environments such as class, work, or home.

Permissions Explained

  • activeTab: Allows the extension to access the currently active tab's content.
+ Standard for extensions that need to interact with web pages.
  • contextMenus: Enables the extension to create custom context menus within Chrome.
+ Unusual; typically used by extensions that provide additional menu options, but not necessarily required for this extension's described functionality.
  • storage: Grants access to local storage, allowing the extension to store and retrieve data.
+ Standard for extensions that need to persist user settings or data.
  • tabs: Allows the extension to interact with tabs, including creating new ones.
+ Unusual; typically used by extensions that provide tab management features, but not necessarily required for this extension's described functionality.
  • identity: Provides access to user identity information, such as email addresses.
+ Unusual; typically used by extensions that require authentication or authorization, which is not explicitly mentioned in the description.
  • scripting: Enables the extension to execute scripts within web pages.
+ Standard for extensions that need to interact with web content dynamically.
  • management: Grants access to Chrome's management API, allowing the extension to manage other extensions or browser settings.
+ Unusual; typically used by enterprise-focused extensions or those requiring advanced configuration options.
  • offscreen: Allows the extension to run in the background even when not visible on screen.
+ Standard for extensions that need to perform tasks without user interaction.
  • search: Enables the extension to access search functionality within Chrome.
+ Unusual; typically used by extensions that provide custom search engines or features, but not necessarily required for this extension's described functionality.
  • alarms: Grants access to Chrome's alarm system, allowing the extension to schedule tasks.
+ Standard for extensions that need to perform periodic tasks without user interaction.
  • gcm (Google Cloud Messaging): Enables the extension to receive push notifications from Google servers.
+ Unusual; typically used by extensions that require real-time updates or notifications, which is not explicitly mentioned in the description.
  • downloads: Allows the extension to access and manage downloads within Chrome.
+ Standard for extensions that need to interact with downloaded files.
  • <all_urls>: Grants access to all URLs, including those on secure (HTTPS) connections.
+ Critical risk; this permission is unusual for an extension claiming to provide reading and writing assistance, as it suggests the extension may be accessing sensitive or proprietary content.

What We Found in the Code

  • eval() used — can execute arbitrary code: This flag indicates that the extension uses eval() to execute JavaScript code. While eval() can pose a security risk if used with untrusted input, its presence alone is not necessarily unusual for an extension that needs to dynamically interact with web content.
  • innerHTML assignment — potential XSS vector: The use of innerHTML assignments may be a concern if the extension uses this method with untrusted data. However, without more context, it's difficult to determine whether this is a genuine security risk or simply a normal coding pattern for UI rendering.
  • Makes HTTP requests: This flag indicates that the extension makes external HTTP requests. Given its purpose and permissions, this is likely used for API calls or fetching resources necessary for its functionality.
  • Listens to keyboard events: The extension listens to keyboard events, which may be used for shortcuts or other interactive features. While unusual for an extension providing reading and writing assistance, it's not necessarily a security risk without more context.
  • Potential crypto-mining code detected: This flag suggests that the extension contains code that could be used for cryptocurrency mining. However, without further analysis or evidence of actual mining activity, this finding is speculative.

External Connections

The extension communicates with several external domains, including:
  • www.w3.org (World Wide Web Consortium)
  • docs.google.com (Google Drive)
  • schemas.microsoft.com (Microsoft Open Specifications)
  • rwgoogle-webservices-7.texthelp.com, rwgoogle-webservices-eu.texthelp.com (Texthelp's own services)
  • onedrive.live.com (Microsoft OneDrive)
  • reading.texthelp.com, fluency.texthelp.com, pra.texthelp.com (Texthelp's own services)
These connections appear expected for an extension providing reading and writing assistance, as they likely relate to API calls or resource fetching necessary for its functionality.

Things to Consider

Based on the extension's name, description, and permissions, users may want to consider the following:
  • The extension's broad permission set, including <all_urls>, suggests it may be accessing sensitive content. Users should carefully evaluate whether this is necessary for its described functionality.
  • The presence of eval() and potential XSS vectors in the code may indicate a need for more secure coding practices or input validation.
  • The unusual permissions (e.g., contextMenus, tabs) may suggest that the extension provides additional features beyond reading and writing assistance, which could be relevant to users' decisions about installing the extension.
360 Internet Protection
Make Chrome Yours/accessibility
📦

Orbitnote

6M+ users
Create, convert, connect: take your digital documents to the next level with OrbitNote.
Make Chrome Yours/accessibility
📦

Dark Reader

6M+ users
Dark mode for every website. Take care of your eyes, use dark theme for night and daily browsing.
Make Chrome Yours/accessibility
📦
Enhance your Roblox experience!
Make Chrome Yours/accessibility