Back to ProjectsMobile App

TallyPocket — Offline Business Ledger

Offline-first React Native app for local businesses to manage expenses, items, and money transfers. Google Drive sync for data backup and cross-device consistency. Built for local client record-keeping.

Case study summary

Client type
Local business
Industry
Retail record-keeping
Duration
TODO: Confirm project dates and duration
My role
React Native developer
Team size
TODO: Confirm team size and collaborators
Stack
React Native, Offline Storage, Google Drive API, State Persistence
Platforms
Mobile application

Challenge

Keep expenses, item records and transfers usable when the business cannot rely on a stable internet connection.

Approach

Make local persistence part of the core workflow and treat remote backup as a separate state that can complete after connectivity returns.

Architecture

React Native entry form to Persistent local records to Google Drive backup, simplified tallypocket architecture
Simplified implementation boundaries. Rendered from the Mermaid source included with this case study.

Key features

  • Expense recording
  • Item management
  • Transfer records
  • Google Drive backup

Results and measurement

The delivered scope is described in this case study. Numeric performance or business results require a measurement source and owner approval.

TODO: Add the verified baseline, final value, measurement period and evidence link. API-count claim: TODO — verify before publication.

Client feedback

TODO: Add an approved client quote for this project, with the client's attribution and source. No invented testimonial is displayed.

Want something similar? Explore this service →

Project at a glance

My contribution and the engineering challenge

My role
React Native application development
The problem
Keep business expenses, items and transfers usable when a shop's connection is unreliable.

What I delivered

  • Offline expense and transfer records
  • Persistent local application state
  • Google Drive backup and sync integration

How the parts connect

  1. STEP 1Record a business entry
  2. STEP 2Persist on the device
  3. STEP 3Back up when connected

Simplified implementation overview.

A key design decision

Local persistence supports the core workflow; a network connection should not be required to enter a business record.

TODO: Add permission-approved, sanitized product screenshots. Concept art is not shown as product evidence.

Languages
JavaScriptTypeScript
Skills & Tech
React NativeOffline StorageGoogle Drive APIState Persistence
Concept illustration for TallyPocket — Offline Business Ledger

Technical concept illustration. The case study below describes the project implementation.

Small shop owners in the target market — kiryana stores and local businesses — frequently deal with unreliable connectivity, so "offline" couldn't be an edge case handled with a loading spinner. It had to be the primary mode of operation, with sync as the secondary concern layered on top once a connection returned. TallyPocket is the React Native app that resulted: expenses, inventory, and money transfers all tracked with zero dependency on the network.

Local storage acts as the source of truth rather than the server, so the app stays fully usable offline; sync is a background reconciliation step, not a prerequisite. Google Drive handles backup and cross-device consistency once connectivity is available — chosen over a custom backend since the target users already trusted Drive, and it meant no server infrastructure to maintain for a small local-business tool. Conflict resolution is deliberately simple: most-recent-local-write-wins per record, since shop owners cared more about not losing data than about a theoretically perfect merge.

  • Offline-first architecture — every core feature works with zero connectivity
  • Expense tracking with categorization and running summaries
  • Item and inventory management kept in sync with local sales activity
  • Money-transfer records — loans, payments, and dues tracked per contact
  • Google Drive sync for automatic backup once a connection is available

Shipped to a real local business client and used daily for record-keeping.

Related work

Explore React Native App Development →

Interested in similar work?

Review my services and how we can define a useful first milestone.

Discuss similar work
WhatsAppHire me