Skip to content

A browser extension to export your Wealthsimple transactions to a CSV file

License

Notifications You must be signed in to change notification settings

lorenzopicoli/ws-exporter

Repository files navigation

GitHub action badge GitHub action badge

Table of Contents

Install

Procedures:

  1. Clone this repository.
  2. Install pnpm globally: npm install -g pnpm (check your node version >= 18.12.0)
  3. Run pnpm install

And next, depending on the needs:

For Chrome:

  1. Run:
    • Dev: pnpm dev
      • When you run with Windows, you should run as administrator. (Issue#456)
    • Prod: pnpm build
  2. Open in browser - chrome://extensions
  3. Check - Developer mode
  4. Find and Click - Load unpacked extension
  5. Select - dist folder at root

For Firefox:

  1. Run:
    • Dev: pnpm dev:firefox
    • Prod: pnpm build:firefox
  2. Open in browser - about:debugging#/runtime/this-firefox
  3. Find and Click - Load Temporary Add-on...
  4. Select - manifest.json from dist folder at root

Remember in firefox you add plugin in temporary mode, that's mean it's disappear after close browser, you must do it again, on next launch.

Structure

ChromeExtension

Main app with background script, manifest

  • manifest.js - manifest for chrome extension
  • lib/background - background script for chrome extension (background.service_worker in manifest.json)
  • public/content.css - content css for user's page injection

Packages

Some shared packages

  • dev-utils - utils for chrome extension development (manifest-parser, logger)
  • i18n - custom i18n package for chrome extension. provide i18n function with type safety and other validation.
  • hmr - custom HMR plugin for vite, injection script for reload/refresh, hmr dev-server
  • tailwind-config - shared tailwind config for entire project
  • tsconfig - shared tsconfig for entire project
  • ui - here's a function to merge your tailwind config with global one, and you can save components here
  • vite-config - shared vite config for entire project
  • zipper - By pnpm zip you can pack dist folder into extension.zip inside newly created dist-zip

Pages

  • content - content script for chrome extension (content_scripts in manifest.json)
  • popup - popup for chrome extension (action.default_popup in manifest.json)

Acknowledgement

This project used chrome-extension-boilerplate-react-vite as a starter

About

A browser extension to export your Wealthsimple transactions to a CSV file

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published