Skip to content

Arrows78/gemsuite-game

Repository files navigation

GemSuite

A match-3 desktop game application for macOS, built with Tauri + React + TypeScript + Tailwind CSS and a design inspired by shadcn/ui.

macOS Tauri React TypeScript


Features

Gameplay

  • 8×8 grid with adjacent swap mechanics
  • Automatic detection of 3+ matched gems
  • Cascade system with automatic refilling
  • Advanced power gems:
    • 4-match horizontal → clears entire row
    • 4-match vertical → clears entire column
    • 5-match or T-shape → 3×3 bomb

Game Modes

Mode Description
Classic Free score, configurable target
Rush 90s 90-second timer, maximum score
Objective Reach a target score
Zen Unlimited, relaxed play

Additional Features

  • Limited shuffles per mode to get out of tough situations
  • Run analytics: gems removed, specials created, activations, max combo
  • Local leaderboard per game mode
  • Persistent player name

Installation

Prerequisites

  • Node.js (v18+)
  • pnpm (package manager)
  • Rust (for Tauri)
  • macOS (for desktop build)

Run in Development

pnpm install
pnpm tauri dev

Build for macOS

pnpm tauri build

The executable will be generated in src-tauri/target/release/bundle/macos/.


Architecture

gemsuite-game/
├── src/                  # React frontend code
│   ├── components/       # UI components
│   ├── game/             # Game logic (grid, matching, scoring)
│   ├── locales/          # i18n translations
│   └── App.tsx           # Entry point
├── src-tauri/            # Rust backend code
│   ├── src/main.rs       # Tauri entry point
│   └── tauri.conf.json   # Configuration
├── package.json
└── README.md

Future Improvements

  • Online leaderboard (Supabase)
  • Daily challenge with shared seed
  • Achievements and account progression
  • Sound effects, music and particles
  • Consumable boosters and power-ups

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages