Aqua Stark is a Web3 game on StarkNet where players can collect, raise and evolve fish in a decentralized ecosystem. ๐๏ธ๐ฎ
โ๏ธ Fish breeding and evolution with unique genetics.
โ๏ธ Decentralized Marketplace to buy and sell fish and decorations.
โ๏ธ True asset ownership thanks to StarkNet and Cairo.
โ๏ธ Aquarium customization with exclusive items and expansions.
โ๏ธ Special events and tournaments with rare fish and rewards.
- Front: React.js + Vite + TailwindCSS
- Backend: Node.js + Express + Supabase
- Blockchain: Dojo Engine
- Monorepo Management: pnpm workspaces
/AQUA-STARK
โโโ /client # Web client (frontend)
โ โโโ /node_modules # Dependencies
โ โโโ /public # Static assets
โ โโโ /src # Frontend source code
โ โโโ .gitignore
โ โโโ README.md # Frontend documentation
โ โโโ package.json # Dependencies and scripts
โ โโโ vite.config.ts # Vite configuration
โโโ /backend # Backend API server
โ โโโ /src # Backend source code
โ โโโ /tests # Backend tests
โ โโโ package.json # Backend dependencies
โโโ /contract # Smart contracts and game logic
โ โโโ /src # Smart contract source code
โ โโโ .gitignore
โ โโโ README.md # Backend documentation
โ โโโ LICENSE # Project license
โ โโโ Scarb.toml # Scarb configuration
โโโ pnpm-workspace.yaml # Workspace configuration
โโโ pnpm-lock.yaml # Lock file
โโโ package.json # Root scripts and dev dependencies
โโโ README.md # This file ๐- Node.js 20+
- pnpm 10.13.1+
- Rust toolchain (for Cairo/Scarb)
- Dojo CLI tools (sozo, katana, torii)
# Clone the repository
git clone https://github.com/AquaStark/Aqua-Stark.git
cd Aqua-Stark
# Install all dependencies
pnpm installFor a complete local development environment setup, follow our comprehensive guide:
๐ Local Development Guide - Complete setup from clone to running environment in <30 minutes
๐ ๏ธ Troubleshooting Guide - Common issues and solutions
From the repository root, you can run these commands:
# Install dependencies for all packages
pnpm install
# Run development server for frontend
pnpm dev
# Run linting for all packages
pnpm lint
# Run type checking for all packages
pnpm typecheck
# Build all packages
pnpm build
# Run tests for all packages
pnpm test
# Run tests with coverage
pnpm test:coverage
# Format code
pnpm format
# Check code formatting
pnpm format:checkYou can also run commands for specific packages:
# Frontend only
pnpm --filter client dev
pnpm --filter client build
pnpm --filter client lint
# Backend only
pnpm --filter backend dev
pnpm --filter backend test๐น Frontend README: Frontend Documentation
๐น Architecture Decisions: ADR Documentation - Key architectural decisions and rationale
To play, make sure you have a StarkNet-compatible wallet like ArgentX or Braavos. Game assets are backed by Cairo smart contracts, ensuring authenticity and scarcity.
Aqua Stark is an open-source project! To contribute, follow these steps:
1๏ธโฃ Fork the repository
git fork https://github.com/AquaStark/Aqua-Stark.git 2๏ธโฃ Clone your fork
git clone https://github.com/YOUR_USERNAME/Aqua-Stark.git
cd Aqua-Stark 3๏ธโฃ Set up local development environment
# Follow our comprehensive setup guide
# ๐ [Local Development Guide](docs/local-development.md)4๏ธโฃ Create a new branch
git checkout -b feature-new 5๏ธโฃ Make your changes and commit them
git commit -m "feat: Add new feature" 6๏ธโฃ Push the changes to your fork
git push origin feature-new 7๏ธโฃ Open a Pull Request ๐
- ๐ Local Development Guide - Complete setup from clone to running environment
- ๐ ๏ธ Troubleshooting Guide - Common issues and solutions
- ๐ง Dojo Documentation - Framework reference
feat/feature-nameโ For new featuresfix/bug-nameโ For bug fixeschore/task-nameโ For maintenance or refactoringdocs/documentation-changeโ For documentation updates
feat: add new login functionalityfix: resolve issue with fish animationschore: refactor contract logicdocs: update README with latest changes
If you encounter issues with pnpm store:
# Clear pnpm store
pnpm store prune
# Reinstall dependencies
pnpm install --forceIf you see lockfile conflicts:
# Remove lockfile and node_modules
rm pnpm-lock.yaml
rm -rf node_modules
rm -rf client/node_modules
rm -rf backend/node_modules
# Reinstall
pnpm installIf builds fail, ensure you're running from the repository root:
# Always run from root
pnpm build
# Not from individual packages
cd client && pnpm build # โ Avoid this๐๐ Dive into Aqua Stark and build your dream aquarium! ๐ฎ๐