Core is a non-custodial browser extension engineered for users to
seamlessly and securely use Web3 powered by Avalanche.
-
Install Node.js and Yarn
The project uses Volta to manage Node.js and Yarn versions, however, it's not mandatory to use Volta, you can always just install the correct version or use another tool likenvm
. -
Get added to
@avalabs
on npmjs.com.
The project uses multiple private SDKs and utility packages from NPM.
Make sure you have 2FA enabled.
- Copy
.env.example
file and rename it as.env
- Populate environment variables with your own values
- Install dependencies
yarn
-
Create environment variable file
.env
based on the.env.example
. -
Run the project
yarn dev
- Load the extension in your Chrome
- In Chrome, go to
chrome://extensions/
. - At the top right make sure you have
Developer mode
turned on:
- After
Developer mode
is turned on, at the top left should beLoad unpacked
:
- Click
Load unpacked
and go to the extension folder. - Select the
dist
folder and pressSelect
.
The project uses semantic versioning to determine the next version number. Use the conventional commmit format for increasing the version number correctly.
feat
: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning).- Having the
BREAKING CHANGE
orBREAKING CHANGES
string in the commit message bumps the major version number - Other scopes like
fix
,build
,chore
,ci
,docs
,style
,refactor
,perf
,test
or having no scope, increment the PATCH section of the version number
Alpha releases are automatically created after each merge into main
.
Bundles can be found in the "Releases" section of the repo.
Production releases are created by the Create prod release
Github action.
The action needs to be triggered manually, and can be triggered on any branch making it easier to create hotfix releases.
- Make sure the branch you are creating the release on is clean and good to go
- Go to Actions and select the "Create prod release" action
- Click "Run workflow" and select the target branch
- After the workflow run is complete, the new release is automatically pushed to the Releses age of the repo and the commit gets tagged
- After green light from QA, upload the build to the Chrome
Only use this for testing. Production versions for Chrome Store submission should ALWAYS be created through CI.
- Create a
.env.production
file based on the.env.example
with the production values. - Run
yarn
- Run
yarn build
. This will create the build into the/dist
folder just like the regular development flow does. - Run
yarn zip
. It packages up the/dist
folder into a.zip
file suitable for Chrome Store uploads. The new file is placed into the/builds
folder.