Vibeleaderboard
Index / app
Visit github.com
Category
Productivity
Rank
No. 1899Tools index

Previous survey · No. 1867 ·

Pricing
Open Source
Type
APP
Builder
obra
GitHub
31 stars
Latest release
v1.0.0
Date

About

A macOS app to browse iMessage conversations and export them as formatted PDFs.

What it does

It reads the Mac’s local Messages database without modifying it, reconstructs modern message bodies, resolves participants through Contacts, and lays out conversations with timestamps, receipts, reactions, edits, replies, and attachments. PDF output can omit images, use thumbnails, or retain original resolution.

Why it's ranked here

The tool has a focused, credible design: read-only database access, typedstream parsing for modern message text, progressive loading for large histories, and unusually rich message metadata. Its value is strongest for faithful archival, though demanding system permissions and source-based installation narrow its audience.

What's good

Exports preserve context that simpler transcripts often lose, including sender identities, service type, delivery and read times, reactions, edited or retracted status, thread indicators, and inline images. Contact lookup is optional, image quality is selectable, and cover pages plus footers make long records easier to navigate.

Tradeoffs

It requires macOS 14 or later, Full Disk Access, a relaunch after permission changes, and Xcode Command Line Tools for the documented build process. The app is not sandboxed. Without Contacts permission, identifiers remain raw. Full-resolution images can make PDFs very large.

How to use it well

Use it when you need a readable, detailed archive of a local iMessage, SMS, or RCS conversation, especially where receipts, reactions, and attachments matter. Choose thumbnails for practical sharing and full resolution for preservation. It does not manage, edit, synchronize, or restore messages.

Technical notes+

Package.swift defines a Swift 5.10 executable for macOS 14 and depends on GRDB.swift 7 or later. Makefile builds a release binary, assembles an app bundle, copies Resources/Info.plist and Resources/AppIcon.icns, then applies ad hoc code signing with Resources/iMessagePrinter.entitlements. Sources/iMessagePrinter/App/AppState.swift opens the database through DatabaseService, batches conversations by 50 and messages by 200, parses attributed bodies when plain text is absent, loads attachments with AppKit, and drives PDF export through a save panel. Sources/iMessagePrinter/Views/ContentView.swift provides the SwiftUI split-view shell.

Observed

License
MIT
Primary language
Swift
Platform support
macOS 14 or later
Interface
Native SwiftUI macOS application
Packaging
Swift Package executable assembled into an ad hoc signed app bundle by Make
Database layer
GRDB.swift 7 or later
Permissions
Full Disk Access is required; Contacts access is optional
Data handling
Reads the local Messages database in read-only mode

Read from README.md, Makefile, Package.swift, Sources/iMessagePrinter/App/AppState.swift, Sources/iMessagePrinter/Models/ChatRecord.swift, Sources/iMessagePrinter/Views/ContentView.swift, Sources/iMessagePrinter/Models/HandleRecord.swift, Sources/iMessagePrinter/Models/MessageRecord.swift, Sources/iMessagePrinter/Views/MessageRowView.swift, Sources/iMessagePrinter/Models/DisplayMessage.swift, Sources/iMessagePrinter/App/iMessagePrinterApp.swift, Sources/iMessagePrinter/Models/AttachmentRecord.swift, Sources/iMessagePrinter/Models/ConversationInfo.swift, Sources/iMessagePrinter/Views/DateSeparatorView.swift, Sources/iMessagePrinter/Views/MessageDetailView.swift.

What it can do

  • Browse iMessage conversations

    iMessage data from macOSViewable conversation list

  • Export iMessage conversations as PDFs

    Selected iMessage conversationsFormatted PDF files

  • Format message threads for printing

    Raw iMessage conversation dataPrint-ready formatted layout

  • Select specific conversations for export

    Available iMessage conversationsFiltered conversation selection

  • Preserve message formatting and timestamps

    Original iMessage formatting dataStructured PDF with preserved metadata

Tags

imessagemacospdfexport

Tech Stack

Swift

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.