A High-Performance, Extensible Application Launcher and Plugin Platform
Open Source Implementation of uTools | Supports macOS and Windows

English | 简体中文
✨ Features
- 🚀 Quick Launch - Pinyin search, regex matching, history tracking, pinned apps
- 🧩 Plugin System - Support for UI plugins and headless plugins with complete API support
- 📋 Clipboard Management - History tracking, search, image support, cross-platform native implementation
- 🎨 Theme Customization - System/light/dark mode with 6 theme colors to choose from
- ⚡ High Performance - LMDB database, WebContentsView architecture, ultra-fast response
- 🌍 Cross-Platform - Native support for macOS and Windows with unified experience
- 🔒 Data Isolation - Independent plugin data storage, secure and reliable
- 🛠️ Developer Friendly - Complete TypeScript type support, hot reload development
- ⚙️ Modern Tech Stack - Electron 41 + Node 24.15 + Chrome 146
📸 Preview
Quick launch and search functionality demo
Interface Showcase
Main Interface - Light Theme
|
Main Interface - Dark Theme
|
Settings - Theme Customization and General Settings
|
Plugin Market - Online Installation and Management
|
🚀 Quick Start
Installation
Method 1: Download Pre-built Version (Recommended)
Download the latest version from Releases:
- macOS:
ztools-x.x.x.dmg or ZTools-x.x.x-arm64-mac.zip
- Windows:
ztools-x.x.x-setup.exe or ztools-x.x.x-win.zip
Method 2: Build from Source
# Clone the repository
git clone https://github.com/ZToolsCenter/ZTools.git
cd ZTools
# Install dependencies
pnpm install
# Development mode
pnpm dev
# Build
pnpm build:mac # macOS
pnpm build:win # Windows
pnpm build:linux # Linux (Default Arch)
pnpm build:linux:x64 # Linux (amd64/x64)
pnpm build:linux:arm64 # Linux (arm64)
Usage
- After launching the app, use the shortcut
Option+Z (macOS) or Alt+Z (Windows) to open the main interface
- Enter application name or command to search
- Use
↑ ↓ ← → to navigate, Enter to confirm, Esc to exit
🧩 Plugin Development
ZTools is a powerful and extensible plugin platform that enhances your productivity with custom plugins. With simple configuration, rich APIs, and cross-platform support, you can easily develop powerful plugins.
Plugin System Features:
- 📝 Simple Configuration - Easily define plugins through standard
plugin.json files, no complex setup required
- 🔌 Rich APIs - Access system capabilities through the global
ztools object, including notifications, simulated input, and persistent storage
- 🎯 Flexible Commands - Trigger your plugins using text, regex, or global hooks to adapt to any workflow
- 🌍 Cross-Platform - Build once, run on Windows, macOS, and Linux with a consistent experience across all devices
📖 Full Documentation: Visit ZTools Developer Documentation for more details
🛠️ Tech Stack
- Framework: Electron 41 + Vue 3 + TypeScript
- Build: Vite + electron-vite
- Database: LMDB (high-performance key-value storage)
- State Management: Pinia
- Search Engine: Fuse.js (with Pinyin support)
- Native Modules: C++ (Node-API)
- Clipboard monitoring
- Window management
- Region screenshot (Windows)
📁 Project Structure
ztools/
├── src/
│ ├── main/ # Main process
│ │ ├── api/ # IPC API modules
│ │ ├── core/ # Core functionality (database, native modules)
│ │ ├── windowManager.ts
│ │ └── pluginManager.ts
│ ├── preload/ # Preload scripts
│ └── renderer/ # Renderer process (Vue)
│ ├── components/
│ ├── stores/ # Pinia state management
│ └── App.vue
├── resources/ # Resource files
│ ├── lib/ # Native modules (.node)
│ └── preload.js # Plugin preload
└── CLAUDE.md # Complete technical documentation
📚 Documentation
💻 Development
Requirements
- Node.js >= 18
- npm >= 9
- macOS or Windows development environment
Development Commands
# Install dependencies
pnpm install
# Development mode (hot reload)
pnpm dev
# Type checking
pnpm typecheck # All
pnpm typecheck:node # Main process + preload
pnpm typecheck:web # Renderer process
# Code formatting
pnpm format # Prettier formatting
pnpm lint # ESLint check
# Build
pnpm build # Compile source code only
pnpm build:mac # Package macOS app
pnpm build:win # Package Windows app
pnpm build:linux # Package Linux app (Default Arch)
pnpm build:linux:x64 # Package Linux app (amd64/x64)
pnpm build:linux:arm64 # Package Linux app (arm64)
pnpm build:unpack # Package without installer (for debugging)
Debugging
- Main process: Press F5 in VS Code, or use
pnpm dev to view terminal logs
- Renderer process: Press
Cmd+Option+I (macOS) or Ctrl+Shift+I (Windows) to open developer tools
- Plugins: Click “Open DevTools” button on the plugin page
🗺️ Roadmap
Completed ✅
🐛 Issue Reporting
Having issues? Please report them in Issues.
When submitting an issue, please include:
- Operating system version
- ZTools version
- Steps to reproduce
- Error logs (if any)
📄 License
This project is licensed under the MIT License.
💝 Acknowledgments
- uTools - Source of inspiration
- Electron - Cross-platform desktop app framework
- Vue.js - Progressive JavaScript framework
- LMDB - High-performance embedded database
If this project helps you, please give it a Star ⭐️
Made with ❤️ by lzx8589561
评论