felipenalves/Dokke has 50 GitHub stars and 12 forks. GitHot measured 0 stars in 24 hours and +1 in 7 days. Last checked 2026-11-10 02:28 UTC. Last push 2026-10-29.
Dock manager — sync apps between Mac and any device via WebSocket. macOS app + PWA + Android WebView.
Measured star growth
- in 24h
- 0
- in 7 days
- +1
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.en.md
Original
Dokke
An app dock that syncs from your Mac to any device on your LAN.
It started with an old Galaxy J5 — today it runs on Android, iPhone, or any browser.
Dokke is an app dock manager: pin, reorder, and open Mac apps from another device on the same network.
Installation
For a no-terminal installation, open the installation page.
Mac — main host
Open the latest Dokke release and choose the package for your Mac: Dokke-macOS-apple-silicon-arm64.dmg for Apple Silicon (M1, M2, M3, or M4), or Dokke-macOS-intel-x86_64.dmg for Intel. Open the .dmg, drag Dokke to Applications, and launch it.
The Mac is the host: it runs the server and makes the dock available to other devices on the same network.
If macOS blocks the first launch, open System Settings → Privacy & Security → Security → Open Anyway → Open. Dokke is distributed outside the App Store.
Android
Download the APK and install it. Then open Dokke on the Mac and use the URL and PIN shown in the Connect tab.
Shortcuts work over HTTP by default for authenticated devices on the same Ethernet/Wi-Fi subnet as the Mac, including the APK. Traffic is not encrypted. Use an HTTPS URL to run shortcuts outside that network.
iPhone
iPhone uses the browser PWA. Open the URL shown in the Mac app in Safari and choose Add to Home Screen. iPhone requires an HTTPS URL; the installation page describes the current path.
On iPhone, use HTTPS to run shortcuts outside the local network.
Windows is not available yet. The installation page will show a button when an installable version exists.
How it works
- The Mac app manages pinned apps and runs the local server.
- The Node.js server syncs the dock through WebSocket and serves the PWA.
- The device receives changes in real time.
- Tapping an app on the device opens it on the Mac.
- UDP discovery finds the Mac on the local network without manual IP configuration.
Stack
| Layer | Technology |
|---|---|
| Mac app | Swift, SwiftUI, MenuBarExtra, Liquid Glass (macOS 26+) |
| Server | Node.js, ws, plain HTTP |
| PWA | Vanilla HTML/CSS/JS, CSS Grid, backdrop-filter blur |
| Android | Kotlin, WebView wrapper |
| Sync | WebSocket and UDP discovery |
Development
For source builds, use macOS 14+, Xcode Command Line Tools, and Node.js 20+:
git clone https://github.com/felipenalves/Dokke.git
cd Dokke
cd mac && ./install.sh --open
Run the server directly:
npm install
node server.js
# → http://localhost:3000
The Mac app starts the server automatically. The Connect tab shows the URL and PIN for other devices.
Features
- Mac app: sidebar, 4×2 dock grid, app picker, drag-to-reorder, native icons, menu bar, and automatic server startup.
- PWA/APK: pinned apps, open apps, long-press to pin, real-time updates, and automatic UI refresh.
- Language: choose Português or English in the PWA, Mac app, and documentation. The local choice persists on that device.
Authentication
All /api/* routes require a 4-digit PIN, except /health, /api/probe, and /api/auth. Requests from loopback (the Dokke app on the Mac) are allowed directly.
The PIN is generated on first boot and can be regenerated from the Mac app's Connect tab. Regenerating it invalidates device cookies; connected devices will request the new code.
API
| Method | Path | Purpose |
|---|---|---|
| GET | /health |
Public health check |
| GET | /api/apps |
Pinned apps and running processes |
| GET | /api/apps/installed |
Installed Mac apps |
| POST | /api/config/pinned |
Pin an app |
| PUT | /api/config/pinned |
Replace the pinned list |
| DELETE | /api/config/pinned/:app |
Unpin an app |
| POST | /api/apps/:name/activate |
Activate an app on the Mac |
Tests
npm test
See the Portuguese README for the complete reference and current release notes.
Explore related projects
n8n-io/n8n
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
210,022 starslanggenius/dify
Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype to production without rebuilding the stack.
160,773 starsmicrosoft/PowerToys
Microsoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows
140,833 starsstablyai/orca
Orca is the place for working with a fleet of agents (e.g. Grok Bot, Claude Code). Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.
121,402 stars