| Crates.io | timecapsule |
| lib.rs | timecapsule |
| version | 1.0.0 |
| created_at | 2025-06-28 17:51:56.338243+00 |
| updated_at | 2025-06-28 17:51:56.338243+00 |
| description | A time-locked message system. encrypt messages that can only be decrypted after a specific date |
| homepage | https://github.com/simplysabir/timecapsule |
| repository | https://github.com/simplysabir/timecapsule |
| max_upload_size | |
| id | 1730027 |
| size | 49,214 |
A command-line tool for creating time-locked encrypted messages that can only be decrypted after a specified date.
cargo install timecapsule
Or build from source:
git clone https://github.com/simplysabir/timecapsule.git
cd timecapsule
cargo install --path .
# Text message
timecapsule lock -m "Remember to call mom" -d "2025-12-25" -l "Christmas Reminder"
# From file
timecapsule lock -f diary.txt -d "2025-01-01" -l "Year End Thoughts"
# Interactive input (no -m or -f flags)
timecapsule lock -d "2025-06-15" -l "Summer Goals"
# List all capsules
timecapsule list
# Check which capsules are ready to unlock
timecapsule check
# Unlock a capsule (only works after the unlock date)
timecapsule unlock --id <capsule-id>
timecapsule unlock --file path/to/capsule.json
2025-12-25 (unlocks at midnight UTC)2025-12-25 15:30:002025-12-25 15:30lock command-m, --message <TEXT> - Message to encrypt-f, --file <PATH> - File to encrypt-d, --date <DATE> - Unlock date (required)-l, --label <LABEL> - Optional label for identification-o, --output <PATH> - Custom output file (default: ~/.timecapsule/)unlock command--id <ID> - Capsule ID from storage--file <PATH> - Path to capsule file~/.timecapsule/ (or custom location)Note: This provides access control, not cryptographic time-lock puzzles. The time check can be bypassed by modifying the source code.
Capsules are stored in:
~/.timecapsule/%USERPROFILE%\.timecapsule\Each capsule is a JSON file containing encrypted content, metadata, and unlock date.
# Personal reminder
timecapsule lock -m "Did you achieve your goals?" -d "2025-12-31" -l "Year Review"
# Project milestone
timecapsule lock -f project-notes.md -d "2025-06-01" -l "Project Retrospective"
# Gift message (save to file to share)
timecapsule lock -m "Happy graduation!" -d "2025-05-15" -o graduation.json
# Check what's ready
timecapsule check
# Unlock when ready
timecapsule unlock --id abc123...
cargo build --release
cargo test
Licensed under either MIT or Apache-2.0 at your option.
Pull requests welcome. Please ensure tests pass and follow existing code style.