Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
browser-redux
Advanced tools
Building Chrome apps and cross-browser extensions with Redux and Webpack.
Simple boilerplate and library for building Chrome apps and cross-browser extensions (support for Firefox and Safari will come later) that use Redux actions instead of messaging.
Redux states are synced between background, inject page, app window, extension popup and badge.
The developing is the same as for the web apps with React and Redux, just use the src/app
boilerplate. If you need some extension or Chrome app customizations, use src/browser/
boilerplates.
The app example is edited from Redux Counter example using Redux Persist, based on React Chrome Extension Boilerplate.
src/app
: React cross-browser application.src/browser
: sources for the extension and Chrome app.test/app
: tests for Redux actions and reducers, and for React components (using Legit Tests).test/chrome
: tests for Chrome app and extension (using chromedriver, selenium-webdriver).# required node.js/io.js
# clone it
npm install
# build files to './dev'
# watch files change
# start WebpackDevServer
npm run dev
You can load unpacked extensions with ./dev
.
This boilerplate uses Webpack
and react-transform
, and use Redux
. You can hot reload by editing related files of Popup & Window. If the inject page is on https (like https://github.com
), click the 'shield' icon on the Chrome address bar to allow loading http://localhost
there (after making any changes in dev mode), so hot reload can work for that page.
# build files to './build/extension'
npm run build:extension
# build files to './build/app'
npm run build:app
# build files to './build/firefox'
npm run build:firefox
Note that it's not possible for now to load Firefox extensions from local directories, so use npm run compress:firefox
instead to generate an xpi file.
# compress extension's build folder to extension.zip
npm run compress:extension
# compress app's build folder to app.zip
npm run compress:app
# compress firefox extension's build folder to firefox.xpi
npm run compress:firefox
# test app
npm run test:app
# start Chromedriver for testing with Chrome
npm run before:test:chrome
# test Chrome extension
npm run test:chrome:extension
# test Chrome app
npm run test:chrome:app
# test Chrome extension and app
npm run test:chrome
# test everything
npm test
FAQs
Building Chrome apps and cross-browser extensions with Redux and Webpack.
We found that browser-redux demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.