Core Platform Suite · Port :3001

Manom.
Signals into Operating Intelligence.

Workforce clarity and time telemetry software turning quiet daily activity into respectful operating intelligence. Uses event frequency ratios without keystroke logging, paired with offline-first local queues and tenant brand customization.

Production Version v0.1.3-Active
Privacy Guarantee Zero Keystroke Logging
Offline Resilience IndexedDB Queue
● Live Focus Session Simulator Frequency Signals Only
00:25:00
Deep Work (94%)

Privacy Architecture

Dignity by Design: Respectful Telemetry.

Traditional workforce tracking tools rely on covert surveillance: recording raw keystrokes, capturing random desktop screenshots, or tracking webcam eye movement. Manom fundamentally rejects this predatory model by measuring aggregate event frequency ratios.

👁️‍🗨️

Zero Keystroke / Password Inspection

Only event tick counters are logged (e.g. 14 ticks/minute). The raw content of what is typed or viewed never leaves the local process.

💾

Air-Gap Offline Sync Queue

When traveling or disconnected, data buffers seamlessly into an encrypted local IndexedDB store, syncing automatically upon network restoration.

🎨

Dynamic Whitelabel Branding Engine

Agencies can brand client-facing invoices and reports with custom domain routing, logo uploads, and dynamic CSS custom properties.

storage/offlineQueue.ts
// Manom — Desktop Activity Signal & Offline Sync Pipeline
import { localStore } from '@/storage/offlineQueue';

export function recordActivitySignal(sample: InputFrequencySample) {
  // Privacy safe: frequencies only, no keystroke/password inspection
  const activityScore = computeActivityIndex(
    sample.keystrokes,
    sample.pointerMovements
  );
  
  const payload = {
    timestamp: Date.now(),
    score: activityScore,
    activeWindow: sanitizeWindowContext(sample.appTitle)
  };

  // Push to local sync queue; auto-dispatches once online
  if (!navigator.onLine) {
    return localStore.queueOfflineEntry(payload);
  }
  return supabase.from('activity_telemetry').insert(payload);
}