postmortem.io - Your Final Act of Digital Haunting

postmortem.io is a conceptual web application that allows users to craft digital messages that are sent upon verified confirmation of their passing. It combines emotional design, security, and probabilistic modeling to ensure messages are only delivered under the correct conditions.

Inspiration

The inspiration for postmortem.io came from observing how digital communication has become central to our lives, yet we rarely plan for what happens to our digital presence after we're gone.
While estate planning exists for physical assets, digital legacies are often overlooked or awkwardly managed by grieving loved ones.

What I Learned

Technical Insights

  • The importance of zero-knowledge proofs in sensitive data handling
  • Implementing graceful degradation for email services
  • Local storage encryption techniques for client-side data protection
  • Progressive Web App (PWA) principles for offline functionality

Ethical Considerations

  • Balancing accessibility and security in sensitive applications
  • Designing for emotional impact while maintaining professionalism
  • Understanding the importance of informed consent in posthumous communication

How I Built postmortem.io

Architecture & Technologies

Frontend

  • HTML5/CSS3 - Semantic markup and responsive layout with CSS Grid & Flexbox
  • Vanilla JavaScript (ES6+) - Core functionality and interactivity
  • CSS Variables - Dynamic theming system
  • Font Awesome - Icon library

Email Services

  • EmailJS - Serverless email delivery
  • Custom HTML email templates with inlined CSS styling

Export Features

  • html2pdf.js - Client-side PDF generation
  • docx.js - Word document export
  • FileSaver.js - Client-side file downloads

Storage & Security

  • Local Storage API - Persistent client-side drafts
  • Base64 encoding & mock encryption for data protection
  • Regex validation for secure form input

Development Process

  1. Research Phase
    Explored existing digital legacy services and identified missing emotional and ethical considerations.

  2. Prototyping
    Built low-fidelity mockups focusing on tone, emotional weight, and user flow.

  3. Implementation
    Developed core message composition, verification, and encryption simulation features.

  4. Testing
    Conducted usability sessions to ensure clarity and reduce emotional friction.

  5. Refinement
    Enhanced accessibility, responsiveness, and ethical design messaging.

Challenges Faced

Technical Challenges

  • Email Reliability - Implemented fallback mechanisms for failed sends
  • Data Persistence - Maintaining draft integrity across sessions
  • Performance - Optimizing large text handling in local storage
  • Cross-browser Compatibility - Ensuring consistent rendering

Design Challenges

  • Emotional Sensitivity - Respecting tone while allowing personal expression
  • User Trust - Transparent verification flow design
  • Accessibility - Supporting users in heightened emotional states

Ethical Challenges

  • Consent Management - Enforcing explicit and informed consent
  • Message Timing - Calibrating grace periods to avoid premature delivery
  • Guardian Burden - Reducing emotional load for verification contacts

Built With

Languages & Core Technologies

  • HTML5 - Semantic structure and accessibility
  • CSS3 - Grid, Flexbox, and custom properties for theme management
  • JavaScript (ES6+) - Core interactivity and encryption simulation
  • EmailJS - Serverless email platform
  • Local Storage API - Browser data persistence

Frameworks & Libraries

  • Font Awesome 6.4.0 - Icons
  • html2pdf.js - PDF generation
  • docx.js - Word export
  • FileSaver.js - File download management

Platforms & Services

  • GitHub Pages - Hosting and deployment
  • EmailJS - Email delivery service
  • CDNJS - Library delivery network

APIs Integration

  • EmailJS REST API - Sends verification and final messages
  • Browser Storage APIs - Draft persistence and retrieval
  • File System Access API - Enables local export functionality

Author

Created by Lorraine Mwoyounotsva

Built With

Share this project:

Updates