AlgoKlima — two interfaces, one record set: field and office write the same row
AlgoKlima is our own product for air conditioning, boiler and appliance service, and we carry its upkeep. The office panel runs on Laravel with Inertia, the field app on React Native (Expo); both sit on one MySQL database with a Redis cache. Two interfaces do not mean two ledgers: the job a technician closes on the phone is the row the office bills from. A record opened out of coverage goes to the phone's local queue first; when the connection returns the queue drains in the order it was created, and changes from both directions merge into one record through conflict resolution. Production orders and bench schedules stay outside it.
Read the case study →