Skip to main content

Personal analytics tool for iMessage and Call History on macOS

Project description

insightme

Local-only analytics for iMessage, Call History, and macOS Contacts names on macOS. Data never leaves your machine — think Spotify Wrapped for messages and calls.

Requirements

  • macOS with Messages / Phone / Contacts data
  • Python 3.11+
  • Full Disk Access for the app that runs the tool (e.g. Terminal):
    System Settings → Privacy & Security → Full Disk Access → add that app
    Then run insightme from your terminal

Install and Run

Pip install

pip install insightme

Run it in terminal

insightme

The insightme command starts the Streamlit UI. Open the URL shown in the terminal (usually http://localhost:8501).

High level workflow

  1. Run on your Mac with Full Disk Access for the terminal as above.
  2. To avoid locking and race conditions with system apps, SQLite files (where the message/call/contacts data are) are copied to a temporary directory and read from the copy.
  3. SQL loads messages, calls, and address-book rows into pandas DataFrames for analytics.
  4. Analytics live under src/insightme/analytics/.
  5. The Streamlit app (default port 8501) renders dashboards locally.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

insightme-0.1.1.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

insightme-0.1.1-py3-none-any.whl (35.3 kB view details)

Uploaded Python 3

File details

Details for the file insightme-0.1.1.tar.gz.

File metadata

  • Download URL: insightme-0.1.1.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for insightme-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d7518e38fcb8286e30fb6da84ff32c5f68bc47e3d6a4c62a96b45310c2206826
MD5 c24f495490d6640e526a9a335dde6b3c
BLAKE2b-256 de95d47d4a250f417176a81f3956af991bcfc4ef86fbb95e7a4712a26a2c849c

See more details on using hashes here.

File details

Details for the file insightme-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: insightme-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 35.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for insightme-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5b81f3b0619d07d093ca84405a5491a03ff5612f4dcf847a02a687c614423c2c
MD5 e5d3d3c5cf8d6e5bd24b46c2cf07f0c8
BLAKE2b-256 955ead9e11d0b8a6488e8fd28d8ee5276b0ab4a33d23e68ca8eeb054f35894e3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page