Skip to content

Repository files navigation

Orbit Weaver

Sling through the stars. Weave your destiny.

Orbit Weaver is an action-arcade HTML5 cosmic slingshot game built with Phaser 3, TypeScript, and Vite. This repository contains the complete engine foundation, service registration pipelines, and UI layout frameworks.

Technology Stack

  • Game Engine: Phaser 3 (v3.80+)
  • Build Tool: Vite
  • Language: TypeScript (Strict Mode)
  • Formatting / Linting: ESLint, Prettier
  • Test Framework: Vitest (JSDom)
  • Deployment: PWA / Service Workers compatible

Getting Started

Prerequisites

  • Node.js >= 18.0.0
  • npm >= 9.0.0

Installation

npm install

Run Development Server

npm run dev

Build Production Bundle

npm run build

Run Tests

npm run test

Project Directory Layout

orbit-weaver/
├── docs/             # Architectures and coding guidelines
├── src/
│   ├── config/       # Config structures (display, audio, debug, performance)
│   ├── constants/    # Magic numbers, asset keys, and storage paths
│   ├── core/         # DI containers and interfaces (IService, IManager)
│   ├── debug/        # Debug console monitoring tools
│   ├── effects/      # Particle burst/trail generators
│   ├── entities/     # Base classes for composable game actors
│   ├── events/       # EventBus payload declarations
│   ├── game/         # Initialization orchestrators
│   ├── helpers/      # Pure math, color, and string helper libraries
│   ├── input/        # Mobile touch and gesture detectors
│   ├── managers/     # Singleton managers (audio, save, assets, transition)
│   ├── physics/      # Circular orbital calculations
│   ├── save/         # Save file serializers, validations, and updates
│   ├── scenes/       # Phaser scenes (Boot, Preload, Menu, Gameplay, HUD)
│   └── ui/           # Reusable components (Buttons, Panels, Bars, Dialogs)
└── tests/            # Vitest unit-test suites

Architecture Summary

The game uses a Service Container for dependency injection. Singleton services are registered on boot, resolved by their Symbol identifier keys, and updated on every game step if they implement the IManager interface. Communication is decoupled using a type-safe EventBus.

License

UNLICENSED (All rights reserved)

About

Orbit Weaver — Premium mobile-first HTML5 cosmic slingshot arcade game built with Phaser 3, TypeScript & Vite. Features custom orbital physics, dynamic vector graphic generation, multi-platform adapters (Poki, CrazyGames, YouTube Playables), PWA offline support, and AAA UI visuals.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages