The Company App
LiveOffline-first operations platform for small business teams managing inventory, orders, and dispatch
Context
Small businesses with 8–25 employees operating across warehouse and office environments. Teams needed a shared operational state for inventory levels, order tracking, and dispatch assignments — without requiring dedicated infrastructure or technical staff to maintain it.
Problem
The team operated across 4–5 disconnected tools: spreadsheets for inventory, messaging apps for team coordination, paper logs for dispatch, and email for client communication. No single source of truth existed for inventory levels or order status. Warehouse and office staff frequently worked from stale data, leading to fulfillment errors, stock discrepancies, and duplicated effort.
Constraints
- —Warehouse connectivity is unreliable — the system had to work fully offline and sync when connection restored
- —Multi-user concurrent writes required conflict resolution without a custom backend
- —Sensitive business data — supplier contacts, pricing, order volumes — could not transit third-party services
- —No IT department on the client side — zero-maintenance sync infrastructure was a hard requirement
Solution
- •Designed an offline-first data layer using NSPersistentCloudKitContainer — no backend, no server costs, automatic sync through CloudKit
- •Structured separate private and shared CloudKit stores to enforce role-based data access at the persistence layer
- •Built a unified Core Data schema covering inventory, orders, dispatch assignments, customer contacts, and team tasks in one model
- •Implemented iPad split-view layouts optimised for warehouse scanning — large tap targets, minimal navigation depth, offline-aware UI states
- •Designed partial sync so field staff receive only their assigned dispatch queue, not the full dataset
- •Eliminated all third-party SDKs for data, networking, and sync — every dependency is a first-party Apple framework
Outcome
Deployed across teams of 8–15 employees managing inventory at multiple warehouse locations. Handles offline operation for hours during connectivity outages and syncs automatically on reconnection — no manual intervention required. Consolidated 4–5 operational tools into one, eliminating the data fragmentation that caused fulfillment errors. Stock discrepancies from stale data dropped in the first month of use. No infrastructure to maintain: CloudKit handles sync, Apple handles availability.
The constraint that shaped the entire architecture: warehouse staff cannot wait for a server response. Offline-first was not a feature — it was the design premise.
Technical Highlights
- →NSPersistentCloudKitContainer — zero-backend sync through Apple infrastructure
- →Offline-first Core Data with automatic merge policy on reconnection
- →Separate private/shared CloudKit stores for role-based data isolation
- →Partial sync design — field staff receive only their assigned data subset
- →Zero third-party dependencies — reduced attack surface and long-term maintenance burden
Built as part of real production work for small teams and independent projects.