https://github.com/joystream/argo-bridge
Cross-chain token bridge between Joystream and EVM blockchains
https://github.com/joystream/argo-bridge
Last synced: 5 months ago
JSON representation
Cross-chain token bridge between Joystream and EVM blockchains
- Host: GitHub
- URL: https://github.com/joystream/argo-bridge
- Owner: Joystream
- License: isc
- Created: 2024-05-02T10:05:00.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-06-13T09:51:15.000Z (about 1 year ago)
- Last Synced: 2025-06-13T10:44:38.191Z (about 1 year ago)
- Language: TypeScript
- Homepage: https://bridge.joystream.org
- Size: 5.06 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Argo bridge
The Argo bridge is a cross-chain token bridge that allows users to transfer JOY tokens between Joystream and Base networks. Even though those are the only networks supported at the moment, the bridge can be generalized to support bridging between any Substrate/EVM chains.
## Architecture
The bridge is semi-manual - all transfers are manually approved by a list of trusted signers and can be executed only by reaching a threshold of approvals. For more details, see the [architecture](docs/architecture.md) document.
## Bridge components
The bridge consists of 4 main components:
1. EVM smart contracts and deployment, found in the [packages/contracts](packages/contracts) directory.
2. Joystream runtime pallet, found in the [Joystream monorepo](https://github.com/Joystream/joystream/tree/master/runtime-modules/argo-bridge).
3. Subsquid indexer, found in the [packages/indexer](packages/indexer) directory.
4. Frontend app, found in the [packages/app](packages/app) directory.
Additionally, the repo contains a [core](packages/core) package that contains reusable code for the other components.
Lastly, in the [tests](packages/tests) directory, you can find the integration tests for all the bridge components.
Each component contains its own README file with more details.
## Development
### Prerequisites
- [Node.js](https://nodejs.org/)
- [Bun](https://bun.sh/)
- [Docker](https://docker.com/)
- [Turborepo](https://turbo.build/repo/)
### Installation
To install all the dependencies, run:
```bash
npm install
```
Then, you should also build the `@joystream/argo-core` package:
```bash
npm run build:core
```
### Running the components
Once dependencies are ready, you can visit the respective component's README file for more details on how to run them.