Skip to content

interledger/web-monetization-extension

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web Monetization Extension

Chrome Firefox Edge GitHub

Nightly build Latest Nightly build

The Web Monetization browser extension is an open source implementation of the Web Monetization draft specification - learn more here. The extension is built with React and TypeScript.

Local Development Environment

Prerequisites

  • NVM (Linux, macOS), NVM Windows (Windows) - or another Node Version Manager

Setup

Environment Setup

# Install Node 20
# For Linux/macOS
nvm install lts/iron
nvm use lts/iron

# For Windows
nvm install lts
nvm use lts

# Install correct version of pnpm using Corepack (Corepack comes with Node)
corepack enable

To install dependencies, execute:

pnpm i

Commands

All commands are run from the root of the project, from a terminal:

  • pnpm dev [TARGET]

    • Builds the extension for development, with live reloading on code changes.
      • TARGET: Specify chrome or firefox or safari. Defaults to chrome if not specified.
    • Output: dev/${TARGET} folder.
  • pnpm build [TARGET] --channel=CHANNEL

    • Creates a production-ready build of the extension.
      • TARGET: Specify chrome or firefox or safari. Builds for all targets if not specified.
      • CHANNEL: Choose nightly, preview, or stable. Defaults to nightly if not specified.
    • Output: dist/${TARGET} folder. Also creates a .zip file in the dist folder.

Learn how to install the extension from source by reading the installation instructions.

Additional commands

  • pnpm test

    • Runs jest for unit testing and integration testing.
    • Use pnpm test:watch to run tests in watch mode.
  • pnpm test:e2e:chromium

    • Runs all end-to-end tests using Chromium & Playwright.
    • Add --ui to run in interactive UI mode.
    • Read our documentation on testing for details.
  • pnpm format

    • Runs Biome and Prettier on the codebase to find formatting issues.
    • Use pnpm format:fix to automatically fix some of the issues.
  • pnpm lint

    • Runs Biome on the codebase to find linting issues.
    • Use pnpm lint:fix to automatically fix some of the issues.

Contributing

Read the developer's guide to understand the codebase.

Please familiarize yourself with the contribution guidelines before submitting contributions. All contributions must adhere to our code of conduct.

Roadmap

Web Monetization Roadmap

See the open issues for a full list of proposed features (and known issues).

Feedback and Issues

If you encounter any issues or have feedback, please open an issue on the GitHub repository. We appreciate your feedback and contributions!

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details

About

An open-source browser extension that enables Web Monetization.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors 16

Languages