tes
Find a file
Yuuki e42f29e3d8
All checks were successful
Build and Release / create-tag (push) Successful in 1h0m11s
Build and Release / build (push) Successful in 1h8m34s
Build and Release / release (push) Successful in 1h0m23s
chore: update version to 2.0.15 and modify repository links
- Bump version in package.json, Cargo.toml, and tauri.conf.json to 2.0.15
- Update repository URL from GitHub to GitLab in relevant files
- Add new dependencies in Cargo.lock for aes, base64ct, bzip2, cipher, constant_time_eq, hmac, inout, jobserver, libloading, password-hash, pbkdf2, subtle, zip, zstd, and their respective versions
- Modify reqwest dependency to include "blocking" feature
- Update GameDetails component to correctly handle proxy messages
- Enhance ProxyMessageModal to persist ignore settings for one day
- Update UpdateFailureModal to reflect new repository links for releases
- Adjust UpdateService error messages to point to the new releases URL
2025-12-02 23:45:16 +08:00
.forgejo/workflows chore: update version to 2.0.15 and modify repository links 2025-12-02 23:45:16 +08:00
.plan chore: update version to 2.0.15 and modify repository links 2025-12-02 23:45:16 +08:00
.trae/rules feat(download): add file existence check and resume support 2025-07-25 02:16:48 +08:00
.vercel feat(download): add file existence check and resume support 2025-07-25 02:16:48 +08:00
src chore: update version to 2.0.15 and modify repository links 2025-12-02 23:45:16 +08:00
src-tauri chore: update version to 2.0.15 and modify repository links 2025-12-02 23:45:16 +08:00
.gitignore Steal from AI 2025-06-28 18:22:48 +08:00
build-verbose.bat feat(build): optimize dev build configuration and add verbose logging options 2025-07-15 20:00:33 +08:00
build-verbose.ps1 feat(build): optimize dev build configuration and add verbose logging options 2025-07-15 20:00:33 +08:00
BUILD.md ci: update build system to use Ubuntu 22.04 2025-06-30 16:03:42 +08:00
build.ps1 feat(build): add automated build system and documentation 2025-06-30 15:52:25 +08:00
build.sh feat(build): add automated build system and documentation 2025-06-30 15:52:25 +08:00
DEVELOPMENT.md build: move windows-specific dependencies to target cfg 2025-06-30 16:19:35 +08:00
eslint.config.js Steal from AI 2025-06-28 18:22:48 +08:00
index.html feat: improve app initialization and version bump to 0.0.16 2025-07-01 15:38:20 +08:00
package-lock.json chore: update version to 2.0.15 and modify repository links 2025-12-02 23:45:16 +08:00
package.json chore: update version to 2.0.15 and modify repository links 2025-12-02 23:45:16 +08:00
postcss.config.js Steal from AI 2025-06-28 18:22:48 +08:00
README.md feat(security): enforce admin privileges and update version to 0.0.14 2025-07-01 07:39:41 +08:00
sync-version.cjs feat(update): implement auto-update functionality for launcher 2025-06-30 21:53:23 +08:00
tailwind.config.js Steal from AI 2025-06-28 18:22:48 +08:00
tsconfig.app.json feat(tauri): integrate Tauri for desktop app functionality 2025-06-28 20:40:43 +08:00
tsconfig.json Steal from AI 2025-06-28 18:22:48 +08:00
tsconfig.node.json Steal from AI 2025-06-28 18:22:48 +08:00
vite.config.ts feat(tauri): integrate Tauri for desktop app functionality 2025-06-28 20:40:43 +08:00

YuukiPS Launcher

A modern game launcher built with React, TypeScript, Tailwind CSS, and Tauri for cross-platform desktop functionality.

Features

  • 🎮 Modern game launcher interface
  • 🖥️ Native desktop application with Tauri
  • 🎯 Windows-specific game launching functionality
  • 📁 Game folder management
  • ⚙️ Game settings and configuration
  • 🔄 Real-time game installation status
  • 🎨 Beautiful UI with Tailwind CSS
  • 🔒 Administrator privilege enforcement for secure operations
  • 🌐 Built-in proxy server functionality
  • 🔧 Automatic game patching capabilities

⚠️ Administrator Requirements

This launcher requires administrator privileges to function properly.

The application needs admin access for:

  • Game Patching: Copying and applying game patches to protected directories
  • Proxy Server: Running the built-in proxy server on system ports
  • System Configuration: Modifying Windows proxy settings when needed

Installation

  • The installer will automatically request administrator privileges
  • Always install as administrator when prompted

Running the Application

  • The launcher will check for admin privileges at startup
  • If not running as admin, the application will display an error and exit
  • Solution: Right-click the launcher and select "Run as administrator"

Development

Prerequisites

  • Node.js (v16 or higher)
  • Rust (latest stable)
  • Windows (for Windows-specific features)

Setup

  1. Install dependencies:
npm install
  1. Run in development mode (web version):
npm run dev
  1. Run Tauri development mode (desktop version):
npm run tauri:dev

Building

Quick Build

  1. Build web version:
npm run build
  1. Build desktop application:
npm run tauri:build

Automated Builds

This project includes automated build workflows that create setup files for Windows and Linux:

  • GitHub Actions: Automatically builds on push/PR and creates releases
  • Local Scripts: Cross-platform build scripts for development

Using build scripts:

# Windows (PowerShell)
.\build.ps1

# Linux/macOS
./build.sh

# Development mode
.\build.ps1 -Dev     # Windows
./build.sh --dev    # Linux/macOS

# Clean build
.\build.ps1 -Clean  # Windows
./build.sh --clean  # Linux/macOS

Creating releases:

# Tag and push to trigger automated release
git tag v1.0.0
git push origin v1.0.0

For detailed build instructions, platform-specific setup, and troubleshooting, see BUILD.md.

Tauri Integration

The launcher includes the following Tauri commands for Windows functionality:

  • launch_game(game_id, game_title) - Launch a game executable
  • show_game_folder(game_id) - Open game folder in Windows Explorer
  • check_game_installed(game_id) - Check if a game is installed

Game Installation Detection

The launcher checks for games in the following directory structure:

C:\Games\{game_id}\game.exe

You can modify the game paths in src-tauri/src/lib.rs to match your game installation directories.

Features

Desktop-Specific Features

  • Custom Window Controls: Minimize, maximize, and close buttons
  • Window Dragging: Drag the header to move the window
  • Game Launching: Direct integration with Windows to launch game executables
  • Folder Management: Open game folders in Windows Explorer
  • Installation Detection: Automatically detect installed games

Cross-Platform Compatibility

The launcher works both as a web application and as a native desktop application:

  • Web version: Shows demo messages for desktop-specific features
  • Desktop version: Full functionality with native Windows integration

Configuration

Tauri Configuration

The Tauri configuration is located in src-tauri/tauri.conf.json. Key settings:

  • Window size: 1200x800 (minimum 1000x700)
  • Decorations: Disabled (custom window controls)
  • Transparency: Enabled for modern UI effects

Game Data

Game information is stored in src/data/games.ts. Each game includes:

  • Basic info (title, description, developer)
  • Version and status information
  • Installation and play time data
  • Visual assets (images, backgrounds)

Development Notes

  • The launcher automatically detects if it's running in Tauri or web mode
  • Windows-specific functionality is conditionally compiled for the target OS
  • All Tauri commands include error handling and user feedback
  • The UI adapts based on the runtime environment (web vs desktop)

License

MIT License - see LICENSE file for details.