How mehranqadirian/securemessage works
Secure Message is a GTK desktop app for encrypting text, files, and voice using password-based or post-quantum protection. The main window is the entry point: users encrypt or decrypt messages there, or open the Files, Voice, and Keys workflows. Files can be encrypted plainly or hidden in image/audio carriers; Voice supports recording, transcription, and encrypted voice. The graph preserves these documented capabilities, plus updates and key persistence. Some subsystem links are documented rather than visible as calls in the excerpts, so those edges are dashed where their implementation-level wiring is uncertain.
Main entry points: main.py Main window · voice_studio.py Voice studio · files_studio.py Files studio · keystore.py Key store
Components 24
Desktop app
- Main window
main.py - Text encrypt/decrypt
main.py
Protection and keys
- Protection inputs
protection.py - Crypto engine
crypto_engine.py - Key manager
keys_window.py - Key store
keystore.py - Key data
File workflows
- Files studio
files_studio.py - File vault
file_vault.py - Carrier vault
vault.py - Image hiding
stego_image.py - File vault window
file_vault_window.py
Voice workflows
- Voice studio
voice_studio.py - Audio I/O
audio.py - Voice codec
voice_codec.py - Speech to text
stt.py
App services
- Update dialog
update_window.py - Update service
updater.py - User settings
settings.py - Theme
theme.py - Shared widgets
widgets.py - Dependency bootstrap
bootstrap.py
Other components
- User
- GitHub releases
Connections 27
- User → Main window: opens
README.md - Main window → Text encrypt/decrypt: offers
README.md - Text encrypt/decrypt → Protection inputs: collects credentials
main.py - Text encrypt/decrypt → Crypto engine: encrypts or decrypts
main.py - Main window → Files studio: opens Files
README.md - Files studio → File vault: protects files
- Files studio → Carrier vault: uses carrier vault
files_studio.py - Files studio → Image hiding: hides in images
files_studio.py - Main window → Voice studio: opens Voice
README.md - Voice studio → Audio I/O: records and plays
voice_studio.py - Voice studio → Voice codec: encodes voice
voice_studio.py - Voice studio → Speech to text: transcribes
voice_studio.py - Voice codec → Crypto engine: seals audio
voice_codec.py - Main window → Key manager: opens Keys
README.md - Key manager → Key store: manages keys
keys_window.py - Key store → Crypto engine: seals secret keys
keystore.py - Key store → Key data: reads and writes
keystore.py - Main window → Update dialog: opens updates
main.py - Update dialog → Update service: checks and installs
update_window.py - Update service → GitHub releases: checks releases
- Main window → User settings: loads preferences
main.py - Main window → Theme: applies appearance
main.py - Main window → Shared widgets: uses shared UI
main.py - Main window → Dependency bootstrap: checks dependencies
main.py - File vault window → File vault: uses vault
file_vault_window.py - File vault window → Protection inputs: collects protection
file_vault_window.py - Voice studio → Protection inputs: collects protection
voice_studio.py