This is the front-end web platform for DEX, built as an Nx monorepo using Next.js, Vite, Playwright, Biome, and pnpm. It includes all frontend apps, E2E tests, and shared libraries.
For detailed setup instructions, prerequisites, and development guidelines, see DEVELOPMENT.md.
# Clone and install
git clone https://github.com/darklakefi/dex-web.git
cd dex-web
pnpm install
npx playwright install
# Start development
pnpm start| Task | Command | Description |
|---|---|---|
| Dev server | pnpm start |
Start the development server |
| Build | pnpm build |
Build the web application |
| Test Web | pnpm test |
Run web application tests |
| Lint | pnpm lint |
Lint the web application |
| E2E | pnpm e2e |
Run end-to-end tests |
| Storybook | pnpm build-storybook |
Build Storybook for UI components |
| Dep Graph | pnpm dep-graph |
Visualize project dependencies |
| Format | pnpm format |
Format codebase |
| Uncomment | pnpm uncomment |
Show comment removal usage (see DEVELOPMENT.md) |
| Update Nx | pnpm update |
Update Nx to latest version |
You can still use
npx nx ...for any Nx command, but these scripts provide convenient shortcuts.
When the proto files generated by dex-gateway change, you need to regenerate the TypeScript types for the gRPC client:
# Generate TypeScript types from protobuf files
npx nx run proto-definitions:generateThis command:
- Creates the output directory
libs/grpc-client/src/generated - Generates TypeScript types from
api.protoandvalidate/validate.proto - Places the generated files in the grpc-client library for use throughout the application
Note: Run this command whenever you update the proto files in
libs/proto-definitions/proto/to ensure type safety across the application.
This is an Nx monorepo that enables:
- Project Graphs for dependency visualization
- Task Orchestration (build, test, lint, e2e)
- Code Generation via Nx plugins
- Affected Commands for efficient CI/local workflows