English | ไธญๆ
A transparent sticky-note wall that pins your notes right onto the desktop.
PinWall is a sticky-note app that lives directly on your macOS desktop. Transparent windows, free dragging, smart reminders โ make every note feel present.
A native macOS desktop app built with Tauri v2.
- Transparent Desktop Window โ Fully transparent window; notes float directly on your wallpaper
- Click-Through โ Clicking blank areas drops the window to the bottom layer, no desktop interference
- Free Drag & Position โ Drag any note anywhere on screen; click to bring it to front
- Smart Reminder Notifications โ Set reminder times; a standalone notification window pops up with a sound alert
- Card Stack & Stash โ Stash unused notes into the stack area; expand and pin back with one click
- 8 Gradient Color Themes โ Choose or randomly assign gradient colors when creating notes
- macOS Window Controls โ Traffic-light buttons for close / minimize / fullscreen
- Custom Backgrounds โ Upload background images with auto-rotation support
- Opacity Control โ Slider to adjust window transparency
- Keyboard Shortcuts โ
โโงNto quick-create,Escto close - Local Persistence โ All data saved to local disk, privacy-first
- Tray Icon โ Always accessible from the system tray
| Layer | Technology |
|---|---|
| Frontend Framework | React 19 + TypeScript |
| Build Tool | Vite |
| State Management | Zustand + tauri-store |
| Desktop Framework | Tauri v2 (Rust) |
| Cross-Window Sync | Zustand shared stores |
| Local Storage | tauri-plugin-fs (disk JSON) |
Prerequisites
- macOS 13+
- Node.js 18+
- pnpm
- Rust (install via rustup)
Install & Run
# 1. Enter the desktop directory
cd desktop
# 2. Install dependencies
pnpm install
# 3. Start dev mode (frontend + Rust window)
pnpm tauri devDev mode opens a transparent window covering the desktop with hot-reload support.
Build for Release
cd desktop
pnpm tauri buildBuild artifacts (.dmg / .app) are output to desktop/src-tauri/target/release/bundle/.
Live: https://pinwall.raingpt.top
The web version of PinWall, offering online sticky-note functionality.
- React 18 + Vite + TailwindCSS + Zustand
- Masonry layout, drag-and-drop sorting, keyboard search (
โK) - Note sharing via links, Markdown / JSON export
cd frontend
pnpm install
pnpm dev # http://localhost:5173Provides API services for the Web App.
- Flask + SQLAlchemy + JWT
- SQLite (dev) / PostgreSQL (production)
cd backend
pip install -r requirements.txt
python3 main.py # http://localhost:8000Product landing page with i18n support (Chinese & English).
- React 19 + Vite + TypeScript
- Deployed on Vercel
cd website
pnpm install
pnpm dev # http://localhost:9123PinWall/
โโโ desktop/ # ๐ฅ๏ธ Desktop App (Tauri v2, core product)
โ โโโ src/ # React frontend
โ โโโ src-tauri/ # Rust native layer
โ โโโ package.json
โโโ frontend/ # ๐ Web App
โ โโโ src/
โ โโโ package.json
โโโ backend/ # โ๏ธ Backend API (Flask)
โ โโโ app/
โ โโโ main.py
โโโ website/ # ๐ Product Website
โ โโโ src/
โ โโโ package.json
โโโ flutter-template/ # ๐ฑ Flutter Template (experimental)
- macOS: GitHub Releases
- Web App: Visit the live site (see deployment config)
See DEPLOY.md for the full deployment workflow.
- Desktop App: GitHub Actions auto-build โ Releases
- Web App: Auto-deployed on Vercel
- Backend: Render / self-hosted + Gunicorn
- Website: Vercel
MIT License โ see LICENSE.