CASE STUDY / 02
The Peaceful Plan
Digital Footprint & Memorialization Platform
A web and mobile-oriented platform designed to help families identify, manage and memorialize the online accounts of deceased loved ones.
- Period
- 2021
- Role
- Web and application development
- Status
- Archived project
Stack
Ionic · Angular · TypeScript · Firebase · Cloudinary · REST APIs
01 / THE PROBLEM
Managing a digital footprint after someone dies is fragmented and difficult.
People may have accounts across many services, while families may not know which accounts exist. Each platform has its own memorialization or removal process, often involving supporting information and follow-up.
The project aimed to make those steps easier to understand and manage from one place.
02 / PRODUCT APPROACH
One place to organise a complex process.
The Peaceful Plan product was split across two codebases in the same organization: a public-facing marketing website and a separate authenticated Ionic/Angular application. Together, they connected information, requests and status tracking.
- 01
Public website
- 02
Account / sign-in
- 03
Memorialization or reverse-search request
- 04
Supporting information / upload
- 05
Request tracking
- 06
Status / history
- 07
Administrative review
03 / PUBLIC WEBSITE
A public-facing service experience.
PeacefulPlan-website was the public-facing, largely static Bootstrap marketing repository. It explained the service and linked visitors into the separate authenticated application.
Implementation
The website used custom CSS, animations, carousels and other UI enhancements. Its login and registration pages linked into PeacefulPlan-App; the authenticated product logic lived in that separate codebase.
Public site pages
- Home
- About
- Services / how it works
- FAQ
- Pricing
- Contact
- Team
- Legal pages
- Login
- Registration
- 404
04 / AUTHENTICATED APPLICATION
The application behind the service.
PeacefulPlan-App was a separate Ionic and Angular repository for signed-in product workflows, distinct from the public marketing website.
This codebase handled registration and login, memorialization and reverse-search requests, history and status tracking, administrator views and Cloudinary uploads. Firebase and social authentication, JWT-backed API sessions and remote API access supported those workflows.
Access and sessions
Registration and login combined Firebase and social authentication with JWT-backed sessions for remote API requests.
Protected navigation
Lazy-loaded routes and AuthGuard protection separated public access from signed-in application workflows.
Request services
Account, memorialization and reverse-search services organised the main user journeys.
Shared foundations
Reusable components and shared HTTP, storage, network and UI providers kept common behaviour together.
05 / MEMORIALIZATION WORKFLOWS
Different platforms, one request experience.
The application organised and tracked memorialization and account-management requests across multiple platforms. Each service had its own process; the product gave users a consistent place to submit information and follow progress.
- Snapchat
06 / REVERSE SEARCH
Finding accounts before managing them.
Reverse-search requests helped users organise social-account discovery and identify possible account matches. Request history and status tracking made it easier to follow what had been submitted and where each request stood.
01Create a request
02Review possible matches
03Track status and history
07 / INTEGRATIONS
External services connected the workflow.
In PeacefulPlan-App, Firebase supported authentication and hosting; a remote API handled application data and authenticated requests; Cloudinary handled uploads. Social-platform workflows covered several services, with Twitter one of the platforms represented.
Application
Ionic / Angular
Identity
Firebase authentication
Service
Remote REST API
Records
Application data
↳ App upload flow
Files
Cloudinary uploads
↳ Request workflow
Platforms
Social-platform processes
↳ Build and delivery
Deployment
GitHub Actions → Firebase Hosting
Capacitor configuration supported mobile packaging.
08 / ADMINISTRATION
Operational views for managing requests.
Administrator views supported the work behind user-facing requests, including users, memorialization requests and reverse-search records.
- 01Users
- 02Memorialization requests
- 03Reverse-search records
09 / TECHNICAL CHALLENGES
Where the difficult work was.
- 01
Multiple external platforms
Social services differed in their processes, required information and integration limits. A shared request experience still had to leave room for those differences.
- 02
Authentication and sessions
Firebase and social sign-in worked alongside JWT-based sessions for the remote API, requiring clear boundaries between identity and application requests.
- 03
Sensitive information
Users could submit personal information and supporting material connected to deceased individuals, so the request flows needed careful handling and clear context.
- 04
A changing ecosystem
Revisiting a 2021 Ionic and Angular stack reinforces the value of dependency maintenance, architectural documentation and modern test tooling.
10 / DEVELOPMENT & DEPLOYMENT
Built with a complete application workflow.
PeacefulPlan-App included testing, linting, CI/build automation and deployment configuration. These practices supported the application build without implying a particular level of test coverage.
- Quality
- Angular unit tests, Protractor end-to-end tests and ESLint were part of the application workflow.
- Automation
- GitHub Actions supported CI and build/deployment automation.
- Hosting
- The application used Firebase Hosting.
- Mobile
- Capacitor configuration supported native/mobile packaging capability.
11 / LESSONS FROM THE ARCHIVE
What I would improve today.
Revisiting the two 2021 codebases shows how engineering judgment changes. If I were working on the broader product today, these would be priorities for clearer and more maintainable foundations.
- 01Stronger README and project documentation
- 02Clearer environment and configuration management
- 03Regular dependency maintenance
- 04Modern test tooling
- 05Clearer architectural documentation
- 06Better documentation of how the two repositories connected
- 07Clearer separation of responsibilities across the two codebases
12 / OUTCOME
A complete early-stage product experience.
Across two repositories, the 2021 product combined a public marketing presence with authenticated application workflows, account and memorialization requests, reverse-search functionality, administration, external services and deployment automation. It is presented here as an archived build.
The value of the project was in connecting a sensitive user journey across information, application and operational layers. Its archived status reflects the period of the build; this case study makes no claim about service availability today.
13 / REFLECTION
What this project taught me.
This project pushed me to design for a sensitive real-world problem across two distinct codebases: the public website and the authenticated application. Looking back at the 2021 build also shows how my approach to architecture, maintainability and deployment discipline has developed.
The most lasting lesson was to keep the user journey understandable even when the underlying platforms, identity systems and operational steps are varied.