- Backpack is in active development, so all APIs are subject to change.
- This code is unaudited. Use at your own risk.
- We emphasize: This is not ready for production use.
To install the latest development release:
- Download the latest build.zip from our Releases page.
- In Chrome, go to
chrome://extensions/
and enable "Developer mode" (top right). - Drag and drop the downloaded zip file into the Chrome extensions page.
For a visual guide, please refer to this video.
- Git
- Node.js
- Yarn package manager
- Google Chrome browser
-
Clone the repository:
git clone git@github.com:coral-xyz/backpack.git cd backpack
-
Enable self-signed local SSL certificates:
- Navigate to
chrome://flags/#allow-insecure-localhost
in Chrome. - Enable the toggle and restart Chrome.
Warning: Only enable this for development. Disable it when you're done to avoid security vulnerabilities.
- Navigate to
-
Set up environment variables:
- Rename
.env.example
to.env
and configure as needed.
- Rename
-
Install dependencies:
yarn install
-
Build all packages:
yarn build
-
Start the development server:
yarn start
Note: For a fresh repository, always run
yarn build
beforeyarn start
.
If you encounter build issues:
yarn clean
yarn build
yarn start
For WebSocket connection errors (wss://localhost:9997/ws failed
):
-
Install mkcert:
cd packages/app-extension brew install mkcert
-
Generate and install certificates:
mkcert localhost mkcert -install
Restart the development server after these steps.
- Go to
chrome://extensions/
- Enable "Developer mode" (top right)
- Click "Load unpacked" and select the
packages/app-extension/dev
directory
If the dev
folder is missing:
- Ensure all Node processes are terminated:
killall -9 node
- Try running
yarn start
in both the root directory andpackages/app-extension
To test the production build:
- Run
yarn build
- In
chrome://extensions/
, load thepackages/app-extension/build
directory
Note: This version won't have hot-reloading, and local plugins may not be visible unless you also run yarn start
.
By contributing to this project, you agree that your contributions will be licensed under the terms decided by the repository maintainers, unless explicitly stated otherwise.