Command Palette

Search for a command to run...

Back to Projects
Dear Future
CompletedReact NativeFirebaseNode.js+1 more

Dear Future

A deeply personal journaling and time-capsule application allowing users to write letters, set goals, and send messages to their future selves.

Timeline

1 Month

Role

Full-Stack Developer

Status
Completed

Technology Stack

React Native
Firebase
Node.js
TypeScript

Key Challenges

  • Engineering a reliable, distributed cron-job system to ensure time-capsule messages were delivered exactly on dates years in the future.
  • Implementing end-to-end encryption to guarantee user journals remained entirely private and unreadable by the database administrators.

Key Learnings

  • Mastered complex background task scheduling using Node.js and Firebase Cloud Functions.
  • Deepened understanding of modern cryptographic standards and secure key management on mobile devices.

Dear Future: Engineering Time Travel

Dear Future is a digital time capsule. It allows users to write deeply personal journal entries, record audio messages, and set ambitious life goals—and then lock them away, scheduling them to be delivered to their future selves months, or even years, down the line.

It is an application designed to foster intense self-reflection and track personal growth over immense timelines.

Writing Process

The Cryptographic Challenge

A journaling application is useless if the user does not trust it. If a user is writing their deepest insecurities or financial goals to their future self, they must have absolute certainty that no one else—not even the developers of the app—can read it.

I implemented a robust End-to-End Encryption (E2EE) pipeline. When a user creates a time capsule, the content is encrypted locally on their physical device using a key derived from their password. Only the completely scrambled ciphertext is sent to the Firebase backend.

The Delivery Engine

Sending an email instantly is easy. Scheduling a push notification for exactly three years from today, ensuring it fires reliably regardless of server migrations or timezone changes, is incredibly complex.

Server Architecture

I built a distributed scheduling engine utilizing Firebase Cloud Functions and highly optimized cron jobs. Every hour, the system queries the database for "unlocked" capsules, processes the decryption handshake upon user login, and triggers the emotional delivery of a message from the past.

Design & Developed by Yugha S