Build log · Software & apps

IsaacSecureMessenger

Software & appsdone3 versionsmacOSEncryptionAES-256PyObjC

reflection not written yet · every fact below is generated from this project’s own spec and files

What it is

E2E encrypted messaging - X3DH + AES-256-GCM.

Version history

Straight from the project’s own card data — what each version added.

V1

Browser chat. Manual key exchange.

V2

Native app: QR code pairing.

V3

X3DH protocol. Production grade.

By the numbers

Measured from the real working folder ~/Documents/projects/apps/IsaacSecureMessenger — not a claim, a count.

22
files
3,402
lines of code
4
file types used
2026-07-13
oldest file
2026-07-13
last touched

Mostly: Python ×10 · HTML ×1 · JavaScript ×1 · CSS ×1

What broke, and what I’d change

Not written yet. This is the part only I can write — what actually went wrong, and what I’d do differently. It lives in builds/reflections/isaacsecuremessenger.md (see _TEMPLATE.md); as soon as that file has words in it, this section fills in on the next build.

Everything else on this page — the spec, the version history, the file counts — is generated from the project’s own build notes and files, so nothing here is guesswork.

Build spec

The project’s own build notes, rendered. Open the raw .md ↗

Show the spec

IsaacSecureMessenger

Category: Software & Apps · Status: Done

E2E encrypted messaging - X3DH + AES-256-GCM.

Stack / Tools: macOS, Encryption, AES-256, PyObjC

Build path:

  • V1 — Browser chat. Manual key exchange.
  • V2 — Native app: QR code pairing.
  • V3 — X3DH protocol. Production grade.

Location: ~/projects/IsaacSecureMessenger/

E2E encrypted messenger. X3DH key agreement (identity + signed prekeys + one-time prekeys) + AES-256-GCM for messages. PyObjC native .app; QR-code pairing for key exchange.

Where it lives

  • Source folder: ~/Documents/projects/apps/IsaacSecureMessenger
  • Artefacts on the site: 22 files · 3,524 lines of text · 754 KB

Stack

  • Python ×10 · binary ×2 · Shell ×1 · plist ×1
  • external tools invoked: python3

What's in the code

  • IsaacSecureMessenger.app/Contents/Resources/app.py — 504 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/static/script.js — 459 lines (JavaScript)
  • IsaacSecureMessenger.app/Contents/Resources/secure_channel.py — 343 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/static/style.css — 342 lines (CSS)
  • IsaacSecureMessenger.app/Contents/Resources/x3dh_protocol.py — 321 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/peer_discovery.py — 266 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/double_ratchet.py — 213 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/proxy.py — 202 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/disappearing_messages.py — 180 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/file_transfer.py — 176 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/voice_notes.py — 162 lines (Python)
  • IsaacSecureMessenger.app/Contents/Resources/crypto_utils.py — 126 lines (Python)

Verified in the Python source

  • CLI / options: --fingerprint, --name, --no-gui, --port
  • classes: DisappearingMessage, DisappearingMessages, DoubleRatchet, FileTransfer, IdentityKeyBundle, IsaacNetProxy, OneTimePreKey, PeerDiscovery, PeerInfo, SecureChannel, SecureTransport, SignedPreKey, VoiceNoteMessage, VoiceRecorder
  • functions: aes_decrypt, aes_decrypt_str, aes_encrypt, aes_encrypt_str, api_bundle, api_connect, api_conversations, api_disappearing, api_file_upload, api_messages, api_peers, api_proxy_status, api_proxy_toggle, api_self_info, api_send, api_status

Notes found in the scripts

  • Isaac Secure Messenger — Dependency Installer
  • Double-click this file to install everything needed.
  • Requires macOS and an internet connection.

_Spec generated from the project's own files on 2026-10-22 (gen-project-specs.py). Everything above was read from the listed files — file counts, line counts, names, routes, headings and script comments. No description was invented._