Aartiq
Aartiq™
Download
Cloud & Sync

Architecture

Device synchronization system supporting WiFi P2P and cloud-based sync. Source: src/lib/WiFiSyncService.ts, src/lib/CloudSyncService.ts, src/lib/P2PFileSyncService.ts, src/lib/SyncMethodManager.ts

Local

WiFi P2P

Cloud

Anywhere Access

E2E

Encrypted

6-digit

Pairing Code

Sync Types

Sync Types

WiFi P2P Sync

Direct local network connection between devices. Fast, private, no internet required.

Features

  • clipboard-sync
  • clipboard-sync-request
  • execute-command
  • desktop-control

Requirements

  • Same local network (WiFi)
  • Desktop app running
  • Mobile app installed

How It Works

  1. 1Desktop broadcasts a discovery beacon on UDP port 3005 to the broadcast address 255.255.255.255 (the socket itself binds an ephemeral port)
  2. 2Mobile listens on that port for the beacon
  3. 3WebSocket connection established on port 3004
  4. 4Pairing code checked during the handshake, then the six message types above are available

Source: src/lib/WiFiSyncService.ts

Sync Data

Sync Items

Clipboard

Push the desktop clipboard to the paired device

clipboard-sync

Clipboard request

Ask the paired device for its clipboard

clipboard-sync-request

Desktop control

Drive the desktop from the paired device

desktop-control

Command execution

Run a command on the desktop

execute-command

Presence

Keep-alive between the paired devices

ping

Handshake

Device identity and pairing code exchange

handshake

Permissions

Permission Levels

Control what each connected device can access with configurable permission levels.

Trusted

Level 1

Known device, allowed to auto-connect. This is what the Trust toggle in Settings sets, and it is the default for a device you have trusted.

1
clipboard-syncexecute-commanddesktop-control

Ask once

Level 2

Default for a device seen for the first time. You approve each connection instead of it reconnecting on its own.

2
clipboard-syncexecute-commanddesktop-control

Blocked

Level 3

Declared by the service and enforced at the handshake, which refuses a blocked device. The Settings toggle does not currently offer it — use Remove instead.

3

Security

Security Features

Pairing code

A six-digit code is generated per session and checked during the handshake; a device presenting the wrong code is refused

src/lib/WiFiSyncService.ts

Short-lived access tokens

Pairing issues short-lived access tokens and refresh tokens bound to client device fingerprint; sync messages require an active token

src/lib/WiFiSyncService.ts

Known devices & revocation

Paired devices are tracked and can be unshared or revoked immediately, invalidating tokens and closing connections

src/lib/WiFiSyncService.ts

Blocked devices & rate limiting

Blocked devices are refused at the handshake, and repeated failed attempts trigger lockout

src/lib/WiFiSyncService.ts

End-to-end encryption

End-to-end encryption covers the cloud path: data is encrypted client-side with your sync passphrase before upload, and decrypted on the device that pulls it. The local WiFi WebSocket is not additionally encrypted by this layer

src/lib/crypto-utils.ts

What is not here

No per-device audit log. Sync messages are written to the developer console and are not retained as a record you can review

Setup Guide

Connect Devices

Mobile Setup

  1. 1Download Aartiq from Play Store
  2. 2Open Settings > Sync on desktop
  3. 3Tap 'Scan QR Code' in mobile app
  4. 4Point camera at desktop QR code
  5. 5Enter 6-digit verification code
  6. 6Select permission level

Cloud Setup

  1. 1Open Settings > Cloud Sync
  2. 2Sign in with Google or email
  3. 3Enable desired sync items
  4. 4Link additional devices with same account
  5. 5Data syncs automatically