Skip to content

Sudoku Tauri is a cross-platform Sudoku game built using Tauri, TypeScript, and Rust. It provides a clean, modern interface for playing the classic number puzzle game on desktop platforms. The project leverages Tauri's lightweight and secure framework to deliver a fast and efficient application.

Notifications You must be signed in to change notification settings

dmdaksh/sudoku-tauri

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sudoku Tauri

A cross-platform Sudoku game built with Tauri, TypeScript, and Rust. Play the classic number puzzle game on desktop with a clean, modern interface.

Sudoku Tauri Screenshot

Features

  • Three difficulty levels: Easy, Medium, and Hard
  • Timer to track your solving speed
  • Hint feature for when you get stuck
  • Validation to check your solution
  • Keyboard navigation support
  • Mobile-friendly UI with number pad
  • Real-time error detection
  • Responsive design for all screen sizes

Demo

Check out the demo video of the application below:

Sudoku Tauri Demo

About Tauri

Tauri is a framework for building lightweight, secure desktop applications with web technologies. Tauri apps combine a Rust backend with a web-based frontend, resulting in smaller, faster, and more secure applications compared to traditional Electron apps.

Key benefits of Tauri:

  • Small bundle size: Tauri apps are significantly smaller than Electron apps
  • Security-focused: Rust backend provides memory safety and security
  • Cross-platform: Build for Windows, macOS, and Linux from a single codebase
  • Native performance: Rust backend allows for better performance than JavaScript-only solutions

Technical Implementation

The application consists of:

Frontend (TypeScript/HTML/CSS)

  • User interface with interactive Sudoku board
  • Game logic for selecting cells and inputting numbers
  • Real-time validation feedback
  • Responsive design for all screen sizes

Backend (Rust)

  • Puzzle generation algorithm that ensures unique solutions
  • Solver implementation using backtracking
  • Validation logic for checking solutions
  • Hint system to help players when stuck

Getting Started

Prerequisites

  • Node.js (v18+)
  • Rust (1.70.0+)
  • pnpm (or npm/yarn)

Installation

  1. Clone the repository
git clone https://github.com/yourusername/sudoku-tauri.git
cd sudoku-tauri
  1. Install dependencies
pnpm install
  1. Run the development server
pnpm tauri dev

Building for Production

To create a production build:

pnpm tauri build

This will create optimized binaries for your current platform in the src-tauri/target/release directory.

How to Play

  1. Start a new game by selecting your desired difficulty (Easy, Medium, Hard)
  2. Click on a cell to select it
  3. Enter a number from 1-9 (using keyboard or number pad)
  4. Use arrow keys for navigation
  5. If you need help, click the "Hint" button
  6. Validate your solution when complete
  7. Challenge yourself to improve your solving time!

Project Structure

  • src/ - Frontend TypeScript code
  • src-tauri/ - Rust backend code
    • src/lib.rs - Core game logic and algorithms
    • src/main.rs - Tauri application entry point
  • index.html - Main HTML entry point

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Tauri for the application framework
  • Vite for frontend tooling
  • TypeScript for type-safe JavaScript
  • Rust for the backend implementation

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

About

Sudoku Tauri is a cross-platform Sudoku game built using Tauri, TypeScript, and Rust. It provides a clean, modern interface for playing the classic number puzzle game on desktop platforms. The project leverages Tauri's lightweight and secure framework to deliver a fast and efficient application.

Resources

Stars

Watchers

Forks

Packages

No packages published