Skip to content

Bubble shooter game for LeGrand, Rachel, and Silas - Built with Phaser 3, TypeScript, and Capacitor

Notifications You must be signed in to change notification settings

summersjc/snoodJS

Repository files navigation

SnoodJS - Bubble Shooter Game for iOS

A fun and interactive Snood-style bubble shooter puzzle game built with Phaser 3, TypeScript, and Capacitor for iOS.

Features

  • 🎮 Classic bubble shooter gameplay with hexagonal grid
  • 🎨 Colorful, engaging graphics
  • 🎵 Sound effects and background music
  • 📱 Optimized for iOS devices (iPhone SE to iPad Pro)
  • ⚡ Smooth 60 FPS performance
  • 💾 High score persistence
  • 🎯 Multiple difficulty levels
  • ✨ Special power-up bubbles (bombs, wildcards)

Tech Stack

  • Game Engine: Phaser 3
  • Language: TypeScript
  • Build Tool: Vite
  • Mobile Framework: Capacitor
  • Testing: Jest
  • Target Platform: iOS 13.0+

Development Setup

Prerequisites

  • Node.js 18+ (LTS)
  • Xcode 15+ (for iOS development)
  • macOS (required for iOS development)

Installation

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

iOS Development

# Initialize iOS platform (first time only)
npx cap add ios

# Sync web assets to iOS
npm run ios:sync

# Open Xcode
npm run ios:open

# Run on iOS simulator/device
npm run ios:run

Testing

# Run tests
npm test

# Run tests in watch mode
npm test:watch

# Generate coverage report
npm test:coverage

Code Quality

# Lint code
npm run lint

# Fix linting issues
npm run lint:fix

# Format code with Prettier
npm run format

Project Structure

snoodJS/
├── src/
│   ├── main.ts              # Entry point
│   ├── scenes/              # Phaser scenes
│   ├── entities/            # Game objects (Bubble, Grid, etc.)
│   ├── systems/             # Game systems (Physics, Collision, etc.)
│   ├── utils/               # Helper functions
│   ├── config/              # Configuration files
│   └── assets/              # Game assets (images, audio, fonts)
├── tests/                   # Test suites
├── ios/                     # iOS native project (generated)
└── dist/                    # Build output

Game Mechanics

Core Gameplay

  1. Launch: Aim and shoot bubbles from the bottom launcher
  2. Match: Connect 3+ bubbles of the same color
  3. Clear: Matched bubbles pop and disappear
  4. Cascade: Orphaned bubbles (not connected to top) fall
  5. Score: Earn points for matches, combos, and cascades
  6. Danger: Cluster descends periodically; game over if it reaches bottom

Special Bubbles

  • Wildcard: Matches with any color
  • Bomb: Clears all nearby bubbles

Performance Targets

  • 60 FPS gameplay
  • <100ms touch input latency
  • <50MB memory usage
  • <5% frame drops during cascades

License

UNLICENSED - For personal use only

Author

Built for family enjoyment 🎮

About

Bubble shooter game for LeGrand, Rachel, and Silas - Built with Phaser 3, TypeScript, and Capacitor

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages