zsweep Svelte Themes

Zsweep

A minimalist, keyboard-driven Minesweeper game played with Vim motions. Built with Svelte 5 (Runes) & TypeScript.


zsweep logo

zsweep

A minimalist, keyboard-centric Minesweeper experience designed for flow state.

โ–ถ PLAY BETA


Report Bug  ยท  Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Features
  4. Roadmap
  5. Contributing
  6. License
  7. Contact

About The Project

zsweep is a modern reimagining of Minesweeper, inspired by the "Monkeytype" aesthetic. It strips away the clutter of traditional Windows-95 clones to focus purely on speed, accuracy, and flow state.

https://github.com/user-attachments/assets/6030f51b-11f3-4d0b-ab13-0e449c9b1b93

Most Minesweeper clones are old-fashioned, click-heavy, and lack detailed stats. zsweep fixes this by providing:

  • Keyboard-first navigation (Tab to restart, Esc for commands).
  • Advanced metrics like 3BV/s (Bechtel's Board Benchmark per second).
  • A "Time Mode" that challenges you to solve as many grids as possible in 15/30/60 seconds.

Whether you are a competitive sweeper or just looking for a zen break, zsweep is designed to feel "just right.

(back to top)

Built With

(back to top)

Getting Started

To get a local copy up and running for development or contribution, follow these steps.

Prerequisites

npm

  npm install npm@latest -g

Installation

  1. Clone the repo

    git clone https://github.com/oug-t/zsweep
    
  2. Install packages

    npm install
    
  3. Setup Environment Rename .env.example to .env.

    # If you don't have Supabase keys, the game will still run, but scores won't save.
    
  4. Run the server

    npm run dev
    

    (back to top)

Features

๐ŸŽฎ Game Modes

  • Time Mode: Clear as many grids as possible within a set time limit (15s, 30s, 60s).

  • Standard Mode: Classic Minesweeper pacing and rules (9x9, 16x16, 30x16).

๐Ÿ“Š Stats & Progression

  • 3BV/s Tracking: Measures the theoretical difficulty of a board divided by time.

  • Heatmap: Visualizes your activity over the last year (GitHub style).

  • Estimated Mines Swept: Tracks your total career "damage."

๐ŸŽจ Theming

  • Built-in Command Palette (Cmd+K or Esc) to switch themes instantly.

  • "Explosion" particle effects on game over.

(back to top)

Contribution

  • We are actively looking for contributors!

  • Contributions are what make the open source community such an amazing place to learn, inspire, and create. Whether you are fixing a typo, optimizing the 3BV algorithm, or adding a new theme, your help is greatly appreciated.

  • ๐Ÿ† Contributor Perk: All contributors who have a PR merged will be listed on the "About" page as a gratidude.

  • If you have a suggestion that would make this better:

Fork the Project

  • Create your Feature Branch (git checkout -b feature/AmazingFeature)

  • Commit your Changes (git commit -m 'Add some AmazingFeature')

  • Push to the Branch (git push origin feature/AmazingFeature)

  • Open a Pull Request

  • Good First Issues: Check out the Issues tab for tickets labeled good first issue if you are new to the codebase!

(back to top)

License

Distributed under the AGPLv3 License. See LICENSE for more information.

(back to top)

Contact

Tommy Guo - tommyguo024@outlook.com

Project Link: https://github.com/oug-t/zsweep

(back to top)

Acknowledgments

  • Monkeytype for the visual inspiration and philosophy.

  • Supabase for making the backend effortless.

  • Lucide Icons for the beautiful SVG set.

(back to top)

Star History

Star History Chart

(back to top)

Top categories

Loading Svelte Themes