📝 Docs(custom): update docs

This commit is contained in:
Kuingsmile
2026-01-10 21:39:24 +08:00
parent 675180aa2c
commit f4ea56767c
2 changed files with 248 additions and 528 deletions

369
README.md
View File

@@ -1,7 +1,15 @@
<div align="center">
<img src="https://imgx.horosama.com/admin_uploads/2022/10/2022_10_05_633d79e401694.png" alt="PicList Logo">
<a href="https://piclist.cn">
<img src="https://imgx.horosama.com/admin_uploads/2022/10/2022_10_05_633d79e401694.png" alt="PicList Logo" width="120" height="120">
</a>
<h1>PicList</h1>
<p><strong>Powerful cloud storage and image hosting management tool</strong></p>
<p>
<strong>A powerful cloud storage and image hosting management tool.</strong>
</p>
<p>
<a href="https://github.com/Kuingsmile/PicList/actions">
<img src="https://img.shields.io/badge/code%20style-standard-green.svg?style=flat-square" alt="Code Style">
</a>
@@ -11,138 +19,85 @@
<a href="https://github.com/Kuingsmile/PicList/releases/latest">
<img src="https://img.shields.io/github/release/Kuingsmile/PicList.svg?style=flat-square" alt="Release">
</a>
<a href="https://github.com/Kuingsmile/PicList/blob/dev/LICENSE">
<img src="https://img.shields.io/github/license/Kuingsmile/PicList?style=flat-square" alt="License">
</a>
</p>
<p>
<a href="https://github.com/Kuingsmile/PicList/blob/dev/README_cn.md">简体中文</a> |
<a href="https://github.com/Kuingsmile/PicList/blob/dev/README.md">English</a>
</p>
</div>
![Repository Stats](https://repobeats.axiom.co/api/embed/9e4ec90b7b50f8e9c10d77439e49e26b303fabed.svg "Repobeats analytics image")
<br>
[简体中文](https://github.com/Kuingsmile/PicList/blob/dev/README_cn.md) | English
<div align="center">
<img src="https://repobeats.axiom.co/api/embed/9e4ec90b7b50f8e9c10d77439e49e26b303fabed.svg" alt="Repobeats analytics image" width="100%">
</div>
## 📑 Table of Contents
## 📖 Introduction
- [📑 Table of Contents](#-table-of-contents)
- [Introduction](#introduction)
- [Official Website](#official-website)
- [How to Migrate from PicGo](#how-to-migrate-from-picgo)
- [PicList-Core](#piclist-core)
- [Key Features](#key-features)
- [Integration Guides](#integration-guides)
- [VSCode Integration](#vscode-integration)
- [Typora Integration](#typora-integration)
- [**Version 1.6.0-dev and above**](#version-160-dev-and-above)
- [**Version \< 1.6.0-dev**](#version--160-dev)
- [Obsidian Integration](#obsidian-integration)
- [Docker Integration](#docker-integration)
- [Using docker run](#using-docker-run)
- [Using docker-compose](#using-docker-compose)
- [Supported Platforms](#supported-platforms)
- [Download and Install](#download-and-install)
- [Direct Download](#direct-download)
- [Scoop (Windows)](#scoop-windows)
- [Winget (Windows)](#winget-windows)
- [Homebrew (macOS)](#homebrew-macos)
- [OS Requirements](#os-requirements)
- [Windows](#windows)
- [macOS](#macos)
- [Linux](#linux)
- [Screenshots](#screenshots)
- [Development](#development)
- [Prerequisites](#prerequisites)
- [Getting Started](#getting-started)
- [Development Mode](#development-mode)
- [Production Build](#production-build)
- [Related Projects](#related-projects)
- [License](#license)
- [Star Me](#star-me)
**PicList** is an efficient cloud storage and image hosting management tool built upon the foundation of PicGo. It retains all the original features while adding comprehensive cloud storage management capabilities.
## Introduction
Whether you need to organize your cloud files, sync markdown images, or manage multiple storage platforms effortlessly, PicList is designed to streamline your workflow with a beautiful interface and robust plugin system.
PicList is an efficient cloud storage and image hosting management tool built upon PicGo with extensive enhancements. It combines complete image hosting capabilities with comprehensive cloud storage management features, offering:
## ✨ Key Features
- All original PicGo functionality plus compatibility with most PicGo plugins
- Extended built-in image hosting platforms (WebDav, local hosting, SFTP, etc.)
- Configuration and album database cloud synchronization (WebDAV/GitHub/Gitee/Gitea)
- Cloud-synchronized file deletion in album view
- Comprehensive cloud storage management with file operations, search, and previews
- Built-in image processing tools (watermarks, compression, scaling, rotation, format conversion)
- **📂 comprehensive Cloud Management**: Browse, search, cloud-delete, and batch rename files in your cloud storage.
- **🔄 Advanced Sync**: Cloud-sync album deletion and configuration/gallery synchronization across multiple devices (via WebDAV/Git).
- **🎨 Built-in Image Tools**: Watermark, compress, scale, rotate, and format conversion out of the box, controllable at individual image bed level.
- **🔌 Wide Compatibility**: Compatible with **Typora**, **Obsidian**, and most existing PicGo plugins.
- **🛠️ Power User Features**: Regex-based batch renaming, upload queues, local/sftp hosting, and more.
- **🌐 Web & Mobile**: Support for form uploads and integration with the mobile app **PicHoro**.
## Official Website
## 📸 Screenshots
Please visit the [PicList official website piclist.cn](https://piclist.cn) for more information.
<details open>
<summary><strong>Upload & Management Interface</strong></summary>
<br>
<div align="center">
<img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/upload.png?raw=true" alt="Upload Interface" width="100%">
</div>
</details>
You can also visit the [DeepWiki of PicList](https://deepwiki.com/Kuingsmile/PicList) to learn more about the project architecture and development.
<details>
<summary><strong>More Views (Gallery, Settings, Task)</strong></summary>
<br>
<table align="center">
<tr>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/gallery.png?raw=true" alt="Gallery"></td>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/cloud_storage.png?raw=true" alt="Cloud Storage"></td>
</tr>
<tr>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/settings.png?raw=true" alt="Settings"></td>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/task.png?raw=true" alt="Task"></td>
</tr>
</table>
</details>
## How to Migrate from PicGo
## 📥 Download & Install
PicList `V1.5.0` and above provide a `one-click migration` function. Enter the `Settings` page, click the button next to `Migrate from PicGo`, then restart the application for changes to take effect.
### 💻 Desktop Applications
## PicList-Core
| OS | Method | Command / Link |
| :---------: | :-----------: | :----------------------------------------------------------------------------------------------- |
| **Windows** | **Winget** | `winget install Kuingsmile.PicList` |
| | **Scoop** | `scoop bucket add lemon https://github.com/hoilc/scoop-lemon` <br> `scoop install lemon/piclist` |
| | **Installer** | [Download .exe](https://github.com/Kuingsmile/PicList/releases/latest) |
| **macOS** | **Homebrew** | `brew install piclist --cask` |
| | **DMG** | [Download .dmg](https://github.com/Kuingsmile/PicList/releases/latest) |
| **Linux** | **Installer** | [Download AppImage/Snap/Deb](https://github.com/Kuingsmile/PicList/releases/latest) |
PicList uses a modified version of PicGo-Core called [PicList-core](https://github.com/Kuingsmile/PicList-Core), adapted for cloud deletion and extended with features like:
### 🐳 Docker
- Watermark addition
- Image compression, scaling, rotation, and format conversion
- CLI command support
- Built-in upload server via `picgo-server` command
To use PicList-core separately, visit [GitHub repo](https://github.com/Kuingsmile/PicList-Core) or the [npm package](https://www.npmjs.com/package/piclist).
## Key Features
- **Complete Compatibility**: Works with Typora, Obsidian, and most PicGo plugins
- **Extended Platform Support**: Added WebDav, Lsky Pro, local hosting, SFTP, and account-based Imgur uploads
- **Cloud-Sync Album**: Delete images from storage alongside local entries
- **Advanced Album Features**: Search, sort, and batch URL modification
- **Built-in Image Tools**: Add watermarks, compress, scale, rotate, and convert formats
- **Form Upload**: Share across multiple computers
- **Config Synchronization**: Save settings and album database to WebDAV/GitHub/Gitee/Gitea repositories
- **Cloud Management**: Browse directories, search files, batch operations, and more
- **Multi-format Previews**: View images, videos, text files, and Markdown files (see [supported formats](https://github.com/Kuingsmile/PicList/blob/dev/supported_format.md))
- **Batch Operations**: Rename cloud files with regular expressions
- **Link Sharing**: Generate pre-signed URLs for private storage buckets
- **Usability Improvements**: Auto-updates, multiple startup modes, UI enhancements, and more
## Integration Guides
### VSCode Integration
Install the [VS-PicList](https://marketplace.visualstudio.com/items?itemName=Kuingsmile.vs-piclist) plugin, which integrates directly with PicList desktop software and supports a variety of uploads and cloud deletion operations in VSCode.
### Typora Integration
#### **Version 1.6.0-dev and above**
**Typora 1.6.0-dev and later versions natively support PicList.** For versions below 1.10.6, set Typora's language to Chinese.
If your Typora version is below 1.8.0, set both the PicList and PicGo (app) upload service paths to your PicList installation path.
[Typora download link](https://typora.io/releases/all)
#### **Version < 1.6.0-dev**
For Windows, in Typora settings:
1. Set upload service to `PicGo(app)`
2. Set `PicGo path` to your PicList installation path
![Typora configuration](https://user-images.githubusercontent.com/96409857/226522101-b3531b7b-534c-4149-b527-8738d4ebb041.png)
Alternatively, install PicList-core with `npm install piclist` and set the upload service to `PicGo-Core (command line)`.
### Obsidian Integration
1. Install the "Image auto upload Plugin" from community plugins
2. Set the default uploader to PicGo(app)
3. Configure PicGo server as `http://127.0.0.1:36677/upload`
4. For cloud deletion support, set the deletion interface to `http://127.0.0.1:36677/delete`
![Obsidian configuration](https://user-images.githubusercontent.com/96409857/226522718-8378c480-9fb4-4785-87e1-d59808862016.png)
### Docker Integration
#### Using docker run
Run PicList with `docker` or `docker-compose`.
```bash
docker pull kuingsmile/piclist:latest
```
```bash
docker run -d \
--name piclist \
--restart always \
@@ -152,179 +107,85 @@ docker run -d \
node /usr/local/bin/picgo-server -k piclist123456
```
Change `./piclist` to your config directory path and `piclist123456` to your preferred secret key.
## 🔌 Integrations
#### Using docker-compose
PicList integrates seamlessly with your favorite markdown editors.
```yaml
version: '3.3'
### VSCode
services:
node:
image: 'kuingsmile/piclist:latest'
container_name: piclist
restart: always
ports:
- 36677:36677
volumes:
- './piclist:/root/.piclist'
command: node /usr/local/bin/picgo-server -k piclist123456
```
Install the **[VS-PicList](https://marketplace.visualstudio.com/items?itemName=Kuingsmile.vs-piclist)** extension for full integration.
Run with `docker-compose up -d`
### Typora
## Supported Platforms
- **Version ≥ 1.6.0**: Select **PicList** directly in the Image settings settings.
- **Version < 1.6.0**: Set 'Image Upload' -> 'PicGo(app)' and point the path to your PicList executable.
| Platform | Album Cloud Deletion | Cloud Storage Management |
| :------------------------: | :------------------: | :----------------------: |
| Built-in AList | ✔️ | ✔️ |
| SM.MS | ✔️ | ✔️ |
| Github | ✔️ | ✔️ |
| Imgur | ✔️ | ✔️ |
| Tencent COS V5 | ✔️ | ✔️ |
| Aliyun OSS | ✔️ | ✔️ |
| Upyun | ✔️ | ✔️ |
| Qiniu | ✔️ | ✔️ |
| S3 API compatible platform | ✔️ | ✔️ |
| WebDAV | ✔️ | ✔️ |
| Local | ✔️ | ✔️ |
| Built-in SFTP | ✔️ | ✔️ |
| Doge Cloud | ✔️ | ✔️ |
| PicList(Lasso-Doll) | ✔️ | ✔️ |
| Lsky Pro | ✔️ | ✔️ |
| Custom API platform | × | × |
### Obsidian
**Supported Plugins with Cloud Deletion:**
1. Install **Image Auto Upload Plugin**.
2. Set Default Uploader to **PicGo(app)**.
3. API Endpoint: `http://127.0.0.1:36677/upload`
- [picgo-plugin-s3](https://github.com/wayjam/picgo-plugin-s3)
- [picgo-plugin-alist](https://github.com/jinzhi0123/picgo-plugin-alist)
- [picgo-plugin-huawei-uploader](https://github.com/YunfengGao/picgo-plugin-huawei-uploader)
- [picgo-plugin-dogecloud](https://github.com/w4j1e/picgo-plugin-dogecloud)
## ☁️ Supported Platforms
## Download and Install
PicList supports a wide range of storage providers.
### Direct Download
| Storage Provider | Album Delete | Cloud Management |
| :-------------------------- | :----------: | :--------------: |
| **AWS S3** (and compatible) | ✅ | ✅ |
| **Aliyun OSS** | ✅ | ✅ |
| **Tencent COS** | ✅ | ✅ |
| **GitHub / Gitee** | ✅ | ✅ |
| **SM.MS / Imgur** | ✅ | ✅ |
| **WebDAV / SFTP** | ✅ | ✅ |
| **Local File System** | ✅ | ✅ |
| **Lsky Pro / Doge Cloud** | ✅ | ✅ |
[Download the latest release](https://github.com/Kuingsmile/PicList/releases/latest)
*Note: Custom API platforms do not support cloud management features.*
### Scoop (Windows)
## 🚀 Development
```bash
scoop bucket add lemon https://github.com/hoilc/scoop-lemon
scoop install lemon/piclist
```
### Winget (Windows)
```bash
winget install Kuingsmile.PicList
```
### Homebrew (macOS)
```bash
# Install
brew install piclist --cask
# Uninstall
brew uninstall piclist
```
### OS Requirements
#### Windows
- **Supported Versions**: Windows 10 and later
- **Architectures**: `ia32` (x86), `x64` (amd64), `arm64`
#### macOS
- **Supported Versions**: macOS Big Sur (11) and later
- **Architectures**: Intel (x64) and Apple Silicon (arm64)
#### Linux
- **Supported Versions**:
- Ubuntu 18.04 and later
- Fedora 32 and later
- Debian 10 and later
## Screenshots
![Upload interface](https://github.com/Kuingsmile/PicList/blob/dev/imgs/upload.png?raw=true)
![Album view](https://github.com/Kuingsmile/PicList/blob/dev/imgs/gallery.png?raw=true)
![Cloud management](https://github.com/Kuingsmile/PicList/blob/dev/imgs/cloud_storage.png?raw=true)
![Settings](https://github.com/Kuingsmile/PicList/blob/dev/imgs/settings.png?raw=true)
![Image editing](https://github.com/Kuingsmile/PicList/blob/dev/imgs/image_editing.png?raw=true)
![Dark theme](https://github.com/Kuingsmile/PicList/blob/dev/imgs/dark.png?raw=true)
## Development
We welcome contributions! Please see [Contributing Guide](https://github.com/Kuingsmile/PicList/blob/dev/CONTRIBUTING_EN.md) for details.
### Prerequisites
1. Node.js 20 + and Git
2. Knowledge of npm
3. Xcode for Mac or Visual Studio for Windows
- Node.js 20+
- Git
- Xcode (macOS) or Visual Studio (Windows) for native modules
### Getting Started
### Build from Source
```bash
# 1. Clone the repository
git clone https://github.com/Kuingsmile/PicList.git
cd PicList
yarn # Do not use npm install
```
To contribute, see the [contribution guide](https://github.com/Kuingsmile/PicList/blob/dev/CONTRIBUTING_EN.md).
# 2. Install dependencies
yarn
### Development Mode
```bash
# 3. specific start dev mode
yarn run dev
```
Development mode has hot-reload but may be unstable. If the process crashes, exit with `Ctrl+C` and restart.
Note: The PicList application icon will appear in your taskbar/system tray while in development mode.
### Production Build
```bash
# 4. Build for production
yarn run build
```
The built installer will be available in the `dist_electron` directory.
## 🔗 Related Projects
For network issues with electron-builder, set the mirror:
- **[PicList-Core](https://github.com/Kuingsmile/PicList-Core)**: The CLI core of PicList.
- **[PicHoro](https://github.com/Kuingsmile/PicHoro)**: Android mobile client.
**Linux/macOS:**
## 📄 License
```bash
export ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
```
**Windows:**
```cmd
set ELECTRON_MIRROR=https://npmmirror.com/mirrors/electron/
```
## Related Projects
- [PicList-Core](https://github.com/Kuingsmile/PicList-Core): Core library based on PicGo-Core for CLI and development
- [PicHoro](https://github.com/Kuingsmile/PicHoro): Mobile app companion for PicList
- [VS-PicList](https://github.com/Kuingsmile/vs-PicList/): VSCode plugin for PicList
## License
This project is open source under the MIT license.
[MIT](https://opensource.org/licenses/MIT)
This project is licensed under the **MIT License**.
Copyright (c) 2017-present Molunerfinn
Copyright (c) 2023-present Kuingsmile
## Star Me
---
[![GitHub stars](https://img.shields.io/github/stars/kuingsmile/PicList?logo=github&style=social)](https://github.com/kuingsmile/PicList/stargazers)
<div align="center">
<p>Star Me ⭐️</p>
[![Stargazers over time](https://starchart.cc/kuingsmile/PicList.svg)](https://github.com/kuingsmile/PicList/stargazers)
[![Star History Chart](https://api.star-history.com/svg?repos=Kuingsmile/PicList&type=Date)](https://star-history.com/#Kuingsmile/PicList&Date)
</div>

View File

@@ -1,7 +1,15 @@
<div align="center">
<img src="https://imgx.horosama.com/admin_uploads/2022/10/2022_10_05_633d79e401694.png" alt="PicList Logo">
<a href="https://piclist.cn">
<img src="https://imgx.horosama.com/admin_uploads/2022/10/2022_10_05_633d79e401694.png" alt="PicList Logo" width="120" height="120">
</a>
<h1>PicList</h1>
<p><strong>强大的云存储与图床管理工具</strong></p>
<p>
<strong>强大的云存储与图床管理工具</strong>
</p>
<p>
<a href="https://github.com/Kuingsmile/PicList/actions">
<img src="https://img.shields.io/badge/code%20style-standard-green.svg?style=flat-square" alt="Code Style">
</a>
@@ -11,139 +19,85 @@
<a href="https://github.com/Kuingsmile/PicList/releases/latest">
<img src="https://img.shields.io/github/release/Kuingsmile/PicList.svg?style=flat-square" alt="Release">
</a>
<a href="https://github.com/Kuingsmile/PicList/blob/dev/LICENSE">
<img src="https://img.shields.io/github/license/Kuingsmile/PicList?style=flat-square" alt="License">
</a>
</p>
<p>
<a href="https://github.com/Kuingsmile/PicList/blob/dev/README_cn.md">简体中文</a> |
<a href="https://github.com/Kuingsmile/PicList/blob/dev/README.md">English</a>
</p>
</div>
![仓库统计](https://repobeats.axiom.co/api/embed/9e4ec90b7b50f8e9c10d77439e49e26b303fabed.svg "Repobeats analytics image")
<br>
简体中文 | [English](https://github.com/Kuingsmile/PicList/blob/dev/README.md)
<div align="center">
<img src="https://repobeats.axiom.co/api/embed/9e4ec90b7b50f8e9c10d77439e49e26b303fabed.svg" alt="Repobeats analytics image" width="100%">
</div>
## 📑 目录
## 📖 简介
- [📑 目录](#-目录)
- [简介](#简介)
- [官方网址](#官方网址)
- [如何从PicGo迁移](#如何从picgo迁移)
- [PicList-Core](#piclist-core)
- [特色功能](#特色功能)
- [如何使用](#如何使用)
- [如何在VSCode中使用](#如何在vscode中使用)
- [如何在Typora中使用](#如何在typora中使用)
- [**1.6.0版本及以上**](#160版本及以上)
- [**1.6.0版本以下**](#160版本以下)
- [如何在Obsidian中使用](#如何在obsidian中使用)
- [如何在Docker中使用](#如何在docker中使用)
- [使用docker run命令](#使用docker-run命令)
- [使用docker-compose](#使用docker-compose)
- [已支持平台](#已支持平台)
- [下载安装](#下载安装)
- [直接下载](#直接下载)
- [ScoopWindows](#scoopwindows)
- [Winget (Windows)](#winget-windows)
- [HomebrewmacOS](#homebrewmacos)
- [系统版本要求](#系统版本要求)
- [Windows](#windows)
- [macOS](#macos)
- [Linux](#linux)
- [应用截图](#应用截图)
- [开发说明](#开发说明)
- [前提条件](#前提条件)
- [开始开发](#开始开发)
- [开发模式](#开发模式)
- [生产构建](#生产构建)
- [其它相关](#其它相关)
- [License](#license)
- [Star Me](#star-me)
**PicList** 是一款高效的云存储和图床平台管理工具,基于 PicGo 深度二次开发。它保留了 PicGo 的所有功能,同时新增了全面的云存储管理能力。
## 简介
无论你是需要整理云端文件、同步 Markdown 图片还是轻松管理多个存储平台PicList 都能通过其美观的界面和强大的插件系统,简化你的工作流程。
PicList是一款高效的云存储和图床平台管理工具基于PicGo深度二次开发提供完整的图床功能和全面的云存储管理能力主要特点包括
## ✨ 特色功能
- 完整保留PicGo所有功能兼容大部分PicGo插件
- 扩展了内置图床平台如WebDav、本地图床和SFTP等
- 支持配置文件和相册数据库的云端同步(WebDAV/GitHub/Gitee/Gitea)
- 相册支持同步云端删除文件
- 全面的云存储管理功能,包括文件操作、搜索和预览
- 内置图像处理工具,如水印、压缩、缩放、旋转和格式转换
- **📂 全面的云存储管理**:支持在云端查看目录、搜索文件、批量操作以及使用正则表达式批量重命名。
- **🔄 高级同步功能**:支持相册云删除同步,以及通过 WebDAV/Git 在多台设备间同步软件配置/相册。
- **🎨 内置图像处理**:开箱即用的水印添加、图片压缩、缩放、旋转和格式转换功能,单图床粒度控制。
- **🔌 广泛的兼容性**:完美兼容 **Typora**、**Obsidian** 以及大多数现有的 PicGo 插件。
- **🛠️ 强大的实用工具**:支持上传队列、本地/SFTP 图床、预签名 URL 生成等。
- **🌐 全平台支持**:支持 Web 端表单上传,并可与移动端 APP **PicHoro** 配合使用。
## 官方网址
## 📸 应用截图
请访问 [PicList官网 piclist.cn](https://piclist.cn) 获取更多信息。
<details open>
<summary><strong>上传与管理界面</strong></summary>
<br>
<div align="center">
<img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/upload.png?raw=true" alt="Upload Interface" width="100%">
</div>
</details>
此外,你也可以访问[DeepWiki of PicList](https://deepwiki.com/Kuingsmile/PicList)了解更多关于项目架构和开发的内容。
<details>
<summary><strong>更多视图 (相册、设置、任务系统)</strong></summary>
<br>
<table align="center">
<tr>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/gallery.png?raw=true" alt="Gallery"></td>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/cloud_storage.png?raw=true" alt="Cloud Storage"></td>
</tr>
<tr>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/settings.png?raw=true" alt="Settings"></td>
<td><img src="https://github.com/Kuingsmile/PicList/blob/dev/imgs/task.png?raw=true" alt="Task"></td>
</tr>
</table>
</details>
## 如何从PicGo迁移
## 📥 下载安装
PicList `V1.5.0`以上版本提供 `一键迁移`功能,进入 `设置`页面,然后在 `从PicGo迁移`选项点击右侧按钮即可,迁移后请重启应用生效。
### 💻 桌面端应用
## PicList-Core
| 操作系统 | 安装方式 | 命令 / 链接 |
| :---------: | :----------: | :----------------------------------------------------------------------------------------------- |
| **Windows** | **Winget** | `winget install Kuingsmile.PicList` |
| | **Scoop** | `scoop bucket add lemon https://github.com/hoilc/scoop-lemon` <br> `scoop install lemon/piclist` |
| | **安装包** | [下载 .exe](https://github.com/Kuingsmile/PicList/releases/latest) |
| **macOS** | **Homebrew** | `brew install piclist --cask` |
| | **DMG** | [下载 .dmg](https://github.com/Kuingsmile/PicList/releases/latest) |
| **Linux** | **安装包** | [下载 AppImage/Snap/Deb](https://github.com/Kuingsmile/PicList/releases/latest) |
PicList的内核使用[PicList-core](https://github.com/Kuingsmile/PicList-Core)这是基于原版PicGo-Core修改的版本具有以下增强功能
### 🐳 Docker
- 水印添加
- 图片压缩、缩放、旋转和格式转换
- CLI命令行支持
- 通过`picgo-server`命令启动上传服务器
如果您希望单独使用PicList-core请访问[GitHub仓库](https://github.com/Kuingsmile/PicList-Core)或[npm包](https://www.npmjs.com/package/piclist)。
## 特色功能
- **完全兼容性**适用于Typora、Obsidian和大多数PicGo插件
- **扩展平台支持**新增WebDav、兰空图床、本地图床、SFTP等原内置imgur图床额外支持账号登录上传
- **云端同步相册**:支持同步删除云端图片,兼容所有内置图床和多个插件
- **高级相册功能**高级搜索、排序和批量URL修改
- **内置图像工具**:水印添加、图片压缩、图片缩放、图片旋转和格式转换,支持高级重命名
- **表单上传**:支持多电脑共享使用
- **配置同步**支持配置和相册数据库同步至WebDAV/GitHub/Gitee/Gitea仓库
- **云存储管理**:云端目录查看、文件搜索、批量操作等功能
- **多格式预览**支持预览图片、视频、文本和Markdown文件查看[支持的文件格式列表](https://github.com/Kuingsmile/PicList/blob/dev/supported_format.md)
- **批量操作**:支持使用正则表达式批量重命名云端文件
- **链接分享**:为私有存储桶生成预签名链接
- **易用性改进**:软件自动更新、多种启动模式、界面优化等
## 如何使用
### 如何在VSCode中使用
安装[VS-PicList](https://marketplace.visualstudio.com/items?itemName=Kuingsmile.vs-piclist)插件与vs-picgo插件相比该插件直接依赖于PicList桌面端软件支持多种上传方式和直接在VSCode中进行云端删除等功能。
### 如何在Typora中使用
#### **1.6.0版本及以上**
**Typora 1.6.0-dev以及以上版本已原生支持PicList**。在1.10.6版本以下中需要将Typora的语言设置为中文。
如果您使用的是1.8.0以下版本的Typora需要同时设置PicList和PicGo(app)上传服务的路径为PicList的安装路径。
[Typora下载链接](https://typora.io/releases/all)
#### **1.6.0版本以下**
Windows系统
1. 进入Typora设置页面选择"图像"
2. 将上传服务设置为`PicGo(app)`
3.`PicGo路径`中填写PicList的安装路径
![Typora配置](https://user-images.githubusercontent.com/96409857/226522101-b3531b7b-534c-4149-b527-8738d4ebb041.png)
或者,您也可以使用`npm install piclist`命令安装PicList-core然后将上传服务设置为`PicGo-Core(command line)`
### 如何在Obsidian中使用
1. 在社区插件中搜索安装`Image auto upload Plugin`
2. 进入插件设置页面,将默认上传器修改为`PicGo(app)`
3. 设置`PicGo server``http://127.0.0.1:36677/upload`
4. 如需启用云端删除功能,请在删除接口中填入`http://127.0.0.1:36677/delete`
![Obsidian配置](https://user-images.githubusercontent.com/96409857/226522718-8378c480-9fb4-4785-87e1-d59808862016.png)
### 如何在Docker中使用
#### 使用docker run命令
使用 `docker``docker-compose` 运行 PicList-core。
```bash
docker pull kuingsmile/piclist:latest
```
```bash
docker run -d \
--name piclist \
--restart always \
@@ -153,179 +107,84 @@ docker run -d \
node /usr/local/bin/picgo-server -k piclist123456
```
请将`./piclist`修改为您的配置文件`config.json`所在路径,将`piclist123456`修改为您自己的密钥。
## 🔌 集成与使用
#### 使用docker-compose
PicList 可以与常用的 Markdown 编辑器无缝集成。
```yaml
version: '3.3'
### VSCode
services:
node:
image: 'kuingsmile/piclist:latest'
container_name: piclist
restart: always
ports:
- 36677:36677
volumes:
- './piclist:/root/.piclist'
command: node /usr/local/bin/picgo-server -k piclist123456
```
安装 **[VS-PicList](https://marketplace.visualstudio.com/items?itemName=Kuingsmile.vs-piclist)** 插件以获得最佳体验。
使用`docker-compose up -d`命令启动。
### Typora
## 已支持平台
- **版本 ≥ 1.6.0**:在图像设置中直接选择 **PicList**
- **版本 < 1.6.0**:设置“上传服务” -> “PicGo(app)”,并将路径指向 PicList 的可执行文件。
| 平台 | 相册云删除 | 云存储管理 |
| :------------: | :--------: | :--------: |
| 内置AList | ✔️ | ✔️ |
| SM.MS | ✔️ | ✔️ |
| Github | ✔️ | ✔️ |
| Imgur | ✔️ | ✔️ |
| 腾讯COS V5 | ✔️ | ✔️ |
| 阿里云OSS | ✔️ | ✔️ |
| 又拍云 | ✔️ | ✔️ |
| 七牛云 | ✔️ | ✔️ |
| S3 API兼容平台 | ✔️ | ✔️ |
| WebDAV | ✔️ | ✔️ |
| 本地文件夹 | ✔️ | ✔️ |
| 内置SFTP | ✔️ | ✔️ |
| 多吉云 | ✔️ | ✔️ |
| PicList(套娃) | ✔️ | ✔️ |
| 兰空图床 | ✔️ | ✔️ |
| 自定义图床 | x | x |
### Obsidian
**支持云删除功能的插件:**
1. 安装 **Image Auto Upload Plugin** 插件。
2. 设置默认上传器为 **PicGo(app)**
3. API 地址设置:`http://127.0.0.1:36677/upload`
- [picgo-plugin-s3](https://github.com/wayjam/picgo-plugin-s3)
- [picgo-plugin-alist](https://github.com/jinzhi0123/picgo-plugin-alist)
- [picgo-plugin-huawei-uploader](https://github.com/YunfengGao/picgo-plugin-huawei-uploader)
- [picgo-plugin-dogecloud](https://github.com/w4j1e/picgo-plugin-dogecloud)
## ☁️ 已支持平台
## 下载安装
PicList 支持广泛的存储提供商。
### 直接下载
| 存储平台 | 相册云删除 | 云存储管理 |
| :---------------------- | :--------: | :--------: |
| **AWS S3** (及兼容 API) | ✅ | ✅ |
| **阿里云 OSS** | ✅ | ✅ |
| **腾讯云 COS** | ✅ | ✅ |
| **GitHub / Gitee** | ✅ | ✅ |
| **SM.MS / Imgur** | ✅ | ✅ |
| **WebDAV / SFTP** | ✅ | ✅ |
| **本地文件系统** | ✅ | ✅ |
| **兰空图床 / 多吉云** | ✅ | ✅ |
[下载最新版本](https://github.com/Kuingsmile/PicList/releases/latest)
*注意:自定义 API 图床不支持云存储管理功能。*
### ScoopWindows
## 🚀 开发说明
```bash
scoop bucket add lemon https://github.com/hoilc/scoop-lemon
scoop install lemon/piclist
```
### Winget (Windows)
```bash
winget install Kuingsmile.PicList
```
### HomebrewmacOS
```bash
# 安装
brew install piclist --cask
# 卸载
brew uninstall piclist
```
### 系统版本要求
#### Windows
- **支持的版本**: Windows 10及以上版本
- **架构**: `ia32` (x86), `x64` (amd64), `arm64`
#### macOS
- **支持的版本**: macOS Big Sur (11)及以上
- **架构**: Intel (x64)和Apple Silicon (arm64)
#### Linux
- **包括不限于**:
- Ubuntu 18.04及更新版本
- Fedora 32及更新版本
- Debian 10及更新版本
## 应用截图
![上传界面](https://github.com/Kuingsmile/PicList/blob/dev/imgs/upload.png?raw=true)
![相册视图](https://github.com/Kuingsmile/PicList/blob/dev/imgs/gallery.png?raw=true)
![云存储管理](https://github.com/Kuingsmile/PicList/blob/dev/imgs/cloud_storage.png?raw=true)
![设置页面](https://github.com/Kuingsmile/PicList/blob/dev/imgs/settings.png?raw=true)
![图像编辑](https://github.com/Kuingsmile/PicList/blob/dev/imgs/image_editing.png?raw=true)
![深色主题](https://github.com/Kuingsmile/PicList/blob/dev/imgs/dark.png?raw=true)
## 开发说明
欢迎提交代码!详情请参阅 [贡献指南](https://github.com/Kuingsmile/PicList/blob/dev/CONTRIBUTING.md)。
### 前提条件
- Node.js 20+
- Git
- Xcode (macOS) 或 Visual Studio (Windows) 用于编译原生模块
1. 需要Node.js 20+ 和 Git
2. 了解npm相关知识
3. Mac需要Xcode环境Windows需要Visual Studio环境
### 开始开发
### 源码构建
```bash
# 1. 克隆仓库
git clone https://github.com/Kuingsmile/PicList.git
cd PicList
yarn # 不要使用npm install
```
如需贡献代码,请参考[贡献指南](https://github.com/Kuingsmile/PicList/blob/dev/CONTRIBUTING.md)。
# 2. 安装依赖
yarn
### 开发模式
```bash
# 3. 启动开发模式
yarn run dev
```
开发模式具有热重载特性,但可能不稳定。如果进程崩溃,请用`Ctrl+C`退出并重新启动。
注意开发模式运行后PicList的应用图标会出现在任务栏/系统托盘中。
### 生产构建
```bash
# 4. 生产环境构建
yarn run build
```
构建成功后,安装文件将出现在`dist_electron`目录中。
## 🔗 相关项目
如果遇到网络问题导致electron-builder下载失败可以设置镜像源
- **[PicList-Core](https://github.com/Kuingsmile/PicList-Core)**PicList 的核心 CLI 库。
- **[PicHoro](https://github.com/Kuingsmile/PicHoro)**PicList 的 Android 移动端 APP。
**Linux/macOS:**
## 📄 开源协议
```bash
export ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
```
**Windows:**
```cmd
set ELECTRON_MIRROR=https://npmmirror.com/mirrors/electron/
```
## 其它相关
- [PicList-Core](https://github.com/Kuingsmile/PicList-Core)基于PicGo-Core的核心库用于CLI操作和项目开发
- [PicHoro](https://github.com/Kuingsmile/PicHoro)配合PicList使用的手机APP
- [VS-PicList](https://github.com/Kuingsmile/vs-PicList/)配合PicList使用的VSCode插件
## License
本项目基于MIT协议开源欢迎大家使用和贡献代码感谢原作者Molunerfinn的开源精神。
[MIT](https://opensource.org/licenses/MIT)
本项目遵循 **MIT License** 开源协议。
Copyright (c) 2017-present Molunerfinn
Copyright (c) 2023-present Kuingsmile
## Star Me
---
[![GitHub stars](https://img.shields.io/github/stars/kuingsmile/PicList?logo=github&style=social)](https://github.com/kuingsmile/PicList/stargazers)
<div align="center">
<p>Star Me ⭐️</p>
[![Stargazers over time](https://starchart.cc/kuingsmile/PicList.svg)](https://github.com/kuingsmile/PicList/stargazers)
[![Star History Chart](https://api.star-history.com/svg?repos=Kuingsmile/PicList&type=Date)](https://star-history.com/#Kuingsmile/PicList&Date)
</div>