Web Analytics

clip-save

⭐ 366 stars English by snsogbl

ClipSave - Clipboard History Management Tool

A cross-platform clipboard history management tool based on Wails + Vue 3 + TypeScript.

Available on App Store

https://apps.apple.com/us/app/剪存/id6754015301

Features

Project Screenshots

Capture

Technology Stack

Install Dependencies

1. Install Wails CLI

go install github.com/wailsapp/wails/v2/cmd/wails@latest

2. Install Project Dependencies

# Go 依赖
go mod tidy

前端依赖

cd frontend npm install

开发

启动开发服务器

wails dev

This will start the hot-reload development server:

Debugging during development

In development mode, the application will automatically open the developer tools, where you can view:

Build

Build production version

wails build

After building, the executable file will be located in the build/bin/ directory.

Custom Script Deployment to Cloudflare Pages

The project uses Cloudflare Pages to host the online script list, allowing users to directly install and update scripts from the "Script Market."

#### 1. Install Wrangler CLI

npm install -g wrangler

#### 2. Log in to Cloudflare

wrangler login

This will open the browser and log in to your Cloudflare account.

#### 3. Deploy the script

wrangler pages deploy scriptingExample --project-name=clip-save-plugins

After deployment, the script can be accessed via the following URLs:

#### 4. Update the script

After modifying any files in the scriptingExample directory, rerun the deployment command:

wrangler pages deploy scriptingExample --project-name=clip-save-plugins

#### 5. Notes

macOS Build Options

# 构建 Intel 版本
wails build -platform darwin/amd64

构建 Apple Silicon 版本

wails build -platform darwin/arm64

构建通用二进制(推荐)

wails build -platform darwin/universal

Windows Build

wails build -platform windows/amd64

Linux Build

wails build -platform linux/amd64

Project Structure

.
├── main.go                      # 主程序入口
├── app.go                       # Wails 应用结构和 API
├── wails.json                   # Wails 配置文件
├── go.mod                       # Go 依赖管理
├── common/                      # 共享代码
│   ├── clipboard.go             # 剪贴板逻辑
│   ├── clipboard_darwin.go      # macOS 特定代码
│   └── db.go                    # 数据库操作
├── frontend/                    # 前端代码
│   ├── src/
│   │   ├── App.vue              # 主应用组件
│   │   ├── components/
│   │   │   └── ClipboardHistory.vue  # 剪贴板历史组件
│   │   ├── main.ts              # 前端入口
│   │   └── style.css            # 全局样式
│   ├── index.html               # HTML 模板
│   ├── package.json             # 前端依赖
│   ├── vite.config.ts           # Vite 配置
│   └── tsconfig.json            # TypeScript 配置
└── build/                       # 构建资源和输出
    ├── bin/                     # 编译后的可执行文件
    ├── appicon.png              # 应用图标
    └── darwin/                  # macOS 特定配置

API Description

Backend API (Go)

Methods defined in app.go are automatically exposed to the frontend:

Frontend Call Example

import { SearchClipboardItems } from '../wailsjs/go/main/App'

// 搜索剪贴板项目 const items = await SearchClipboardItems('关键词', '所有类型', 100)

Instructions

OCR Text Recognition Features

Data Storage

Clipboard history is saved at: ~/.clipsave/clipboard.db

The database is created automatically and includes the following fields:

System Requirements

Development Notes

After Updating Go API

After each modification of the methods in app.go, the frontend bindings need to be regenerated:

wails generate module
Or use developer mode, which will automatically generate:

wails dev

Frontend Development

The frontend uses Vite + Vue 3 + TypeScript:

CGO Dependencies

The project uses CGO (for SQLite and clipboard operations), requiring:

Common Issues

1. Build Failure

Make sure all dependencies are installed:

# macOS
xcode-select --install

Windows

安装 MSYS2 和 MinGW-w64

Linux

sudo apt-get install build-essential libgtk-3-dev libwebkit2gtk-4.0-dev

2. Frontend Unable to Call Backend API

Make sure you have run wails generate module to generate frontend bindings.

License

MIT License

Appreciation and Support

💗 Buy the Author a Coffee

If this software has saved you time (or at least didn’t drive you crazy), feel free to buy the author a coffee ☕ or a beer 🍺!

Every cup of coffee magically transforms into: new features, fewer bugs (I try my best), and the author's spirit boost during late-night coding sessions.

Your Stars ⭐ and donations are my motivation to fix bugs and add new features (and also my coffee fund)!

Scan with WeChat

Appreciation QR Code

"Buy me a cup of coffee ☕"

Give the Project a Star ⭐

If this project has helped you, please give it a Star ⭐; it’s the greatest support for me!

Acknowledgements

--- Tranlated By Open Ai Tx | Last indexed: 2026-07-16 ---