A comprehensive collection of UI components and utilities for blockchain applications by Hemi Labs.
This monorepo uses npm workspaces, and contains the following projects:
- packages/*: Contains a comprehensive list of reusable packages.
- packages/btc-wallet: Components for Bitcoin wallet integration (Currently, only Unisat is supported).
- packages/genesis-drop-actions: Package that contains functions needed for the TGE event.
- packages/hemi-tunnel-actions: Package that contains viem actions to use the Hemi tunnel.
- packages/hemi-viem-stake-actions: Package that contains viem actions to use the Hemi Stake.
- packages/ve-hemi-actions: Package that contains functions needed to interact with the staking contract veHEMI.
- portal: Portal webapp living at https://app.hemi.xyz.
- portal-backend: Various APIs and cron jobs the Portal uses.
- subgraph-api: API for querying hemi subgraphs needed for the portal.
- subgraphs/*: The different subgraphs needed for the portal, such as tunneling operations.
To setup the repository, run the following command in the root of the repo:
npm install
This will setup all dependencies in all the workspaces. Check each workspace's README.md for further installation steps if needed.
Deploys to staging are triggered when merging changes to the main
branch.
Deploys to production are triggered when a release is created.
The suggested format for the tags is YYYYMMDD_seq
.
The release notes could be auto-generated by GitHub after selecting the tag.
Tags applied with the following command will show in its message the list of all the PRs merged since the last tag:
git tag -s YYYYMMDD_seq -m "Deploy $(date -I)" -m "$(git log $(git describe --abbrev=0 --tags)..HEAD --oneline | grep Merge)"
This is the list of MCP servers that can be connected to. Use the listed guidelines to enable the connection of VS code to them
Note: Some guidelines may use settings customization, but VS code has standardize them into using mcp.json. Further info here