A local-first Pixiv download, indexing, gallery, task, and smart retrieval workstation.
v1.3.0 Mature Delivery · macOS DMG · Windows Installer · Next.js Workbench · Rust/Axum Backend · SQLite Local Index
中文 · 日本語 · Quick Start · Release Builds
Pixiv Platform is a desktop-oriented, local-first Pixiv downloader and library workbench. It keeps Pixiv credentials, DeepSeek keys, downloaded files, task history, and the SQLite index on your machine. The v1.3.0 release is the current mature delivery baseline: the macOS DMG and Windows installer are published on GitHub Releases, the main app surface supports English / Chinese / Japanese, and first-time setup now lives in a reusable in-app Quick Start page instead of a blocking onboarding modal.
The application is built from one shared codebase:
src/backend: Rust backend, Axum API, Pixiv/DeepSeek clients, SQLite repositories, task queue.src/frontend: Next.js app workbench used by Web and Tauri.tauri-app: desktop shell and release packaging.
- Quick Start page: an action-first setup guide for language, Pixiv network, Pixiv account binding, optional DeepSeek, downloads, tasks, and gallery.
- Pixiv account binding: paste
PHPSESSIDor use the Pixiv login window in the desktop app. - Local account management: switch or delete locally saved Pixiv accounts; the active UID is shown in the topbar.
- Runtime readiness: Home shows Pixiv network, Pixiv account, and DeepSeek status without rerunning expensive checks on every navigation.
- Download modes: Single, Author, Bookmarks, and Smart tag-search downloads.
- Smart Retrieval: DeepSeek-compatible prompt parsing turns natural language into editable Pixiv tags.
- Local library: downloaded images, tags, sources, tasks, task items, and logs are indexed in SQLite.
- Gallery and Tasks: preview local images, inspect details, delete files/index rows, and track task progress.
- Internationalized UI: lightweight
en,zh, andjalanguage support without a heavy i18n framework.
The v1.3.0 mature release provides both macOS and Windows desktop packages:
Pixiv.Platform_1.3.0_aarch64.dmg
Pixiv.Platform_1.3.0_x64-setup.exe
The macOS build is locally signed and verified, but it is not Apple-notarized. On first launch, macOS Gatekeeper may require manual approval in System Settings.
Small-distribution desktop users do not need Rust, Cargo, Node.js, npm, or TypeScript installed.
- Install and open the desktop app, or run the Web workbench locally.
- Open Quick Start from the topbar.
- Choose your language in Settings / General.
- Check Pixiv network access. If you use a proxy, enable global TUN mode before testing.
- Bind Pixiv in Settings / Pixiv Binding by pasting
PHPSESSIDor using the Pixiv login window. - Optional: configure DeepSeek API key, base URL, and model in Settings / DeepSeek.
- Start a download from Download using Single, Author, Bookmarks, or Smart.
- Track progress in Tasks and browse files in Gallery.
Common runtime settings are available in the app:
language:en,zh, orja.pixiv_cookie: stored locally and masked in API responses.download_base_path: defaults to~/Downloads/Pixiv Platform.r18_policy: exclude, blurred include, visible include, or only R18.deepseek_api_key,deepseek_base_url,deepseek_model.default_batch_countandmax_request_count.
Default local storage:
~/Downloads/Pixiv Platform/
~/Downloads/Pixiv Platform/pixiv_platform.sqlite3
You can also use environment variables when running the backend directly:
PIXIV_PLATFORM_BIND=127.0.0.1:3000
PIXIV_DOWNLOAD_ROOT=/absolute/path/to/output
PIXIV_PLATFORM_DB_PATH=/absolute/path/to/pixiv_platform.sqlite3
PIXIV_PHPSESSID=your_pixiv_cookie
DEEPSEEK_API_KEY=your_deepseek_keyNever commit Pixiv cookies, DeepSeek API keys, or other secrets.
- Rust stable with Cargo
- Node.js 20+ and npm
- macOS for building the current DMG target
- Visual Studio 2022 Build Tools / MSVC C++ linker for Windows desktop builds
- A valid Pixiv
PHPSESSIDfor real Pixiv downloads - A DeepSeek-compatible API key only for Smart Retrieval
cd src/frontend
npm installcd src/backend
cargo run --bin serverThe backend defaults to:
http://127.0.0.1:3000
cd src/frontend
npm run devOpen:
http://127.0.0.1:3001
If the backend is on another port:
PIXIV_BACKEND_URL=http://127.0.0.1:3002 npm run devcd src/frontend
npm run buildcd src/backend
cargo build --releaseThe current v1.3.0 Tauri config targets macOS app and dmg.
cd tauri-app
npm install
npm run buildArtifacts:
tauri-app/src-tauri/target/release/bundle/macos/Pixiv Platform.app
tauri-app/src-tauri/target/release/bundle/dmg/Pixiv Platform_1.3.0_aarch64.dmg
Verification:
codesign --verify --deep --strict "tauri-app/src-tauri/target/release/bundle/macos/Pixiv Platform.app"
hdiutil verify "tauri-app/src-tauri/target/release/bundle/dmg/Pixiv Platform_1.3.0_aarch64.dmg"The v1.3.0 GitHub Release includes a Windows NSIS installer:
Pixiv.Platform_1.3.0_x64-setup.exe
To produce a Windows installer locally, build on Windows with the appropriate Tauri target configuration.
cd tauri-app
npm.cmd install
npm.cmd run buildDefault local quality gate:
./tests/run_local.shThe v1.3.0 baseline was verified with:
cd src/frontend && npm run lint
cd src/frontend && npm run build
cd src/backend && cargo test
cd tauri-app/src-tauri && cargo check
./tests/run_local.sh
cd tauri-app && npm run build
codesign --verify --deep --strict "tauri-app/src-tauri/target/release/bundle/macos/Pixiv Platform.app"
hdiutil verify "tauri-app/src-tauri/target/release/bundle/dmg/Pixiv Platform_1.3.0_aarch64.dmg"
Live Pixiv E2E is opt-in and requires a runtime cookie:
PIXIV_PHPSESSID=your_pixiv_cookie ./tests/e2e/live_single_download.shCommon endpoints:
POST /api/download/singlePOST /api/downloads/authorPOST /api/downloads/bookmarksPOST /api/smart/parsePOST /api/smart/downloadGET /api/tasksGET /api/tasks/{task_id}GET /api/imagesGET /api/images/{image_id}GET /api/images/{image_id}/fileDELETE /api/images/{image_id}POST /api/images/delete-batchGET /api/settingsPUT /api/settings/{key}POST /api/settings/test/pixivPOST /api/settings/test/deepseekGET /api/runtime/readinessGET /api/pixiv/accountsPOST /api/pixiv/accounts/activeDELETE /api/pixiv/accounts/{user_uid}
See docs/specs/api-contract.md for the full contract.
src/backend/ Rust backend, API, task queue, Pixiv/DeepSeek clients, SQLite repositories
src/frontend/ Next.js frontend workbench
tauri-app/ Tauri desktop shell and package configuration
docs/ Product, architecture, API, testing, delivery, and release notes
tests/ Unit, integration, stage, smoke, and opt-in live scripts
static/ README assets and screenshots
- Secrets are configured at runtime or saved locally through Settings.
- Settings API responses mask secret values.
- Desktop logs avoid writing Pixiv cookies and API keys.
- Live Pixiv tests are opt-in.
- Downloaded files and SQLite data stay under the configured local path.
v1.3.0 is considered a mature local-first delivery baseline. Future work can focus on:
- Thumbnail cache and large-gallery performance.
- Top10 / Random discovery modes.
- Task cancel/retry controls.
- Richer gallery organization and metadata editing.
- Local semantic search and similarity clustering.
- Developer ID signing, notarization, and auto-update flow.
No explicit license file is currently included. Treat the repository as source-available unless a license is added.




