explaingit

advayc/wrapped

Analysis updated 2026-05-18

1GoAudience · generalComplexity · 2/5Setup · easy

TLDR

Wrapped is a macOS command line tool that reads your local iMessage history and generates a Spotify Wrapped style summary website of your texting stats.

Mindmap

mindmap
  root((wrapped))
    What it does
      Reads local iMessage data
      Generates stats website
      Stays fully local
    Tech stack
      Go
      macOS
      HTML
    Use cases
      Yearly recap
      Multi year comparison
      Custom date range
    Requirements
      Full Disk Access
      macOS only

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Generate a personal year-in-review style summary of your iMessage activity entirely on your own Mac.

USE CASE 2

Compare texting stats across several past years using the --years flag.

USE CASE 3

Look at message activity for just the last 90 days or a custom date range.

USE CASE 4

Produce a redacted version of the stats to share without exposing sensitive message content.

What is it built with?

GomacOSHTML

How does it compare?

advayc/wrappedaegrail/aegrail-engineaeneasr/form
Stars111
LanguageGoGoGo
Last pushed2019-03-08
MaintenanceDormant
Setup difficultyeasyhardeasy
Complexity2/55/52/5
Audiencegeneralops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires macOS with Full Disk Access granted to the terminal so it can read the local Messages database.

No license is stated in the README, so usage rights are unclear.

In plain English

Wrapped is a small command line tool for macOS, written in Go, that gives a person a Spotify Wrapped style summary of their own iMessage history. It reads directly from the local Messages database on the Mac, lets the user pick a time period in the terminal, and then opens a locally generated website showing statistics about their texting habits over that period. Everything happens on the user's own machine and nothing is sent anywhere else. Getting started can be as simple as pasting a single curl command into Terminal, which downloads and runs a setup script without needing Go installed or the repository cloned first. That script normally looks for a prebuilt macOS program and downloads it into a local cache if it is not already present. Someone who prefers working from the Go source directly can opt into that path instead, either by setting an environment variable before running the script or by running the Go command directly from a cloned copy of the repository. Using the tool requires macOS to grant the terminal Full Disk Access, since reading the Messages database needs that permission. Once it runs, Wrapped writes its results into a local output folder as an HTML page and a JSON data file, then opens that page automatically in the browser. Reactions like tapbacks are counted separately from regular messages rather than being treated as normal texts. The tool supports several command line flags to control which messages are included in the summary: choosing a specific year, several years at once, the last set number of days, a custom date range, or all available history. There is also a flag to redact sensitive details from the output and one to stop the results page from opening automatically. The README does not mention a software license.

Copy-paste prompts

Prompt 1
Explain how Wrapped generates an iMessage stats summary without uploading any data.
Prompt 2
Walk me through the fastest way to run Wrapped on my Mac using the curl script.
Prompt 3
What does the --redact flag do when generating my iMessage wrapped stats?
Prompt 4
How do I run Wrapped for a custom date range instead of a full year?

Frequently asked questions

What is wrapped?

Wrapped is a macOS command line tool that reads your local iMessage history and generates a Spotify Wrapped style summary website of your texting stats.

What language is wrapped written in?

Mainly Go. The stack also includes Go, macOS, HTML.

What license does wrapped use?

No license is stated in the README, so usage rights are unclear.

How hard is wrapped to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is wrapped for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.