Comment

Comment by KishanBagaria

Apple's chat.db has an esoteric schema owing to the fact they never designed it from the ground up and instead kept adding new columns and tables with each macOS release. This makes their queries super complicated with multiple joins.

Once you have the schema figured out, it's dead easy to build a third-party client that works better than the official one. Even search works great with a simple LIKE query but Apple re-indexes all messages leading to your CPU going over 1000%: https://twitter.com/KrauseFx/status/1396433852126670852

Source: I built a third-party desktop client for iMessage at https://texts.com and reverse engineered the complete sqlite structure.

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton