Skip to main content

Development Setup

This guide helps you set up a complete local development environment for Areloria WASD.

Prerequisites

Ensure you have the following installed:

Installation

1. Clone the Repository

2. Install Dependencies

3. Build Shared Package

The @wasd/shared package is required for both server and client:
If you encounter import errors:

Project Structure

Running Development

Full Monorepo Build

Builds clients first, then the server with embedded Vite middleware.
Server runs on port 3000 with Vite middleware for client assets.

Separate Client & Server

Terminal 1 - Server:
Terminal 2 - 2D Client:

Environment Configuration

Create .env File

Key Variables

Development Auth

For development without authentication:

Testing

Unit & Integration Tests

End-to-End Tests

CI Variant

Linting

Runs ESLint across server and client code.

Building

Build Commands

Build Verification

Runs lint, tests, and build without E2E.

Common Tasks

Adding a New System

  1. Create system file in server/src/core/systems/
  2. Register in TickSystemRegistry
  3. Add to WorldTickScheduler
  4. Write tests
  5. Update documentation

Adding New Content

Content JSON files go in server/src/game-data/:

Asset Pipeline

Process Stitch-generated assets:

Troubleshooting

”Failed to resolve import @wasd/shared”

Port Already in Use

Client Shows Blank Page

Next Steps

Architecture Overview

Understand the system design

Quickstart

Quick start guide

Deployment

Deploy to production

Components

Documentation components