This is a monorepo containing a number of Left Curve Software products:
Name | Language | Description |
---|---|---|
book | Markdown | documentation, created with mdBook |
dango | Rust | a suite of DeFi application smart contracts |
grug | Rust | an execution environment for blockchains |
hyperlane | Rust | implementation of the Hyperlane cross-chain messaging protocol in Grug |
indexer | Rust | indexer and server infrastructure |
sdk | TypeScript | an SDK for interacting with Grug chains |
ui | TypeScript | a web interface for accessing Dango |
Prerequisites:
We use VS Code as text editor with the following plugins:
- Biomejs
- Code Spell Checker
- Dependi
- EditorConfig
- Error Lens
- Even Better TOML
- LaTeX Workshop
- Markdown All in One
- markdownlint
- rust-analyzer
- solidity
- Todo Tree
- Trailing Spaces
Install the grug
command line software:
just install
Run tests:
just test
Lint the code:
just lint
Compile and optimize smart contracts:
just optimize
Before running any command is necessary to run:
pnpm install
Start the development mode for dango and grug sdk:
pnpm dev:sdk
Start the development mode for the app located in the ui/portal/web
directory:
pnpm dev:portal-web
Build Grug and Dango SDK:
pnpm build:sdk
Build Portal Website:
pnpm build:portal-web
Run tests:
pnpm test
Run linter:
pnpm lint
Generate documentation:
pnpm doc
Generate translations:
pnpm machine-translate
Storybook:
pnpm storybook
Install dependencies:
cargo install mdbook
cargo install mdbook-katex
Generate book:
mdbook build
© 2024-2025 Left Curve Software. All rights reserved.
This repository and all its contents, including but not limited to source code, documentation, specifications, and associated materials (collectively, the "Software") are proprietary to Left Curve Software Limited (the "Company") and are provided for informational purposes only. No license, express or implied, is granted. No part of the Software may be modified, forked, distributed, sublicensed, or used in any manner, for commercial or non-commercial purpose, without express written permission of the Company.