Monorepo for Olas (Autonolas) frontends. Built with Nx and Next.js; we preferably use Yarn for installs and scripts.
| App | Port | Description |
|---|---|---|
| Bond | 3001 | Bonding products (EVM + Solana) |
| Build | 3002 | Staking contract builder |
| Contribute | 3003 | Contributions, staking, backend integration |
| Docs | 3000 | Documentation site (no wallet) |
| Govern | 3004 | Governance, voting, veOLAS |
| Launch | 3005 | Launch and nominate staking contracts |
| Marketplace | 3006 | Mech marketplace & Registry (WalletConnect) |
| Operate | 3007 | Operate staking contracts |
| Pearl API | 3010 | API (Zendesk, achievements, Web3Auth) |
Apps differ by stack: some need WalletConnect/Web3 (e.g. Bond, Build, Govern, Launch, Marketplace, Operate, Contribute); Docs is static; Pearl API is API + Web3Auth. See each app’s CLAUDE.md and CONTRIBUTING.md for details.
yarn
yarn nx run <app-name>:serveOpen the app at http://localhost:<port> (see table above).
- apps/ – Next.js apps; each has its own pages, components, Redux store, and optional wallet/backend.
- libs/ – Shared code:
ui-components,ui-theme,util-functions,util-contracts,util-constants,common-contract-functions,common-middleware,util-ssr, and feature libs. Shared logic lives here; apps stay thin. - State – Redux Toolkit per app; Wagmi/Web3Modal where a wallet is required.
- Styling – styled-components + Ant Design; theme from
libs/ui-theme.
See CLAUDE.md for detailed architecture, commands, and conventions.
| Task | Command |
|---|---|
| Serve app | yarn nx run <app-name>:serve |
| Build app | yarn nx run <app-name>:build |
| Test | yarn nx test <app-name> |
| Lint | yarn nx lint <app-name> |
| Lint fix | yarn nx lint <app-name> --fix |
| Clear cache | yarn nx reset |
- Use conventional commits for commits and PR titles (e.g.
feat:,fix:,docs:).
Types: Conventional commit types. - Full guidelines: CONTRIBUTING.md.