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-1.1.0.tar.gz (32.6 kB view details)

Uploaded Source

Built Distribution

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

insightme-1.1.0-py3-none-any.whl (39.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: insightme-1.1.0.tar.gz
  • Upload date:
  • Size: 32.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for insightme-1.1.0.tar.gz
Algorithm Hash digest
SHA256 1f013ae6dbb168fc57cf1713b160720902765652f40adae282b143e2952a1275
MD5 12d5ad2be0a60217a4fff91714044591
BLAKE2b-256 7bce16e895528c1ed50394fb3417aa8aced6044b698207871c9250b20102c9b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for insightme-1.1.0.tar.gz:

Publisher: publish-pypi.yml on Harshith24/insightme

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: insightme-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 39.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for insightme-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 154e29f73b133fa0d7dc510c8bce28aed896f63c5c0825830ce23c01b55a269b
MD5 03b9ddb1a14bb4d6d3e9d292efb1070c
BLAKE2b-256 d559954b44dd6bb93e287aa4cf682fa4c8fceeb5cf76143ab632d26e54c73c9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for insightme-1.1.0-py3-none-any.whl:

Publisher: publish-pypi.yml on Harshith24/insightme

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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