Glasses For Good

Introduction
The problem my team and I, partnering with Vanderbilt Health, are trying to resolve is the creation of custom glasses for patients with syndromes which produce facial abnormalities.
Target Patients
Past Solutions
In the past, Vanderbilt has outsourced the production of these glasses with the Loving Eyes Foundation (LEF), however due to the fact that LEF is based in California it can take months to get the glasses to the patients. LEF may need to have the glasses be sent back if they do not fit the first time, and by the time the patient gets glasses that fit well enough, they need to be reevaluated for a new perscription.
Project Overview
Glasses for Good is an innovative, proprietary health technology platform developed in partnership with Vanderbilt Optometrists. The project aims to revolutionize the creation of custom eyewear for patients with craniofacial syndromes or irregularities that prevent standard-fit glasses.
This platform automates the complex process of turning raw biometric scan data into a verified, 3D-printable model, with a core focus on secure data handling and application hardening due to the sensitive nature of the patient data involved.
Technical Architecture & Security Highlights
The entire infrastructure is designed for high security and performance, built on a secure, self-hosted foundation.
Security and Hardening
-
Data Confidentiality (PII Focus): The system is engineered to handle sensitive health-related PII (Personally Identifiable Information). End-to-end security protocols are implemented to ensure data confidentiality and integrity within the self-hosted infrastructure.
-
Application Security (AppSec): The Django REST API protects all user credentials using Argon2 cryptographic hashing (the industry-recommended standard) and implements a stateless JWT (JSON Web Token) system for secure session and request verification.
-
Network Perimeter Defense: All API traffic is secured using an Nginx reverse proxy and routed via Tailscale, mandating HTTPS/TLS encryption to prevent eavesdropping and data tampering.
-
System Hardening: The hosting Ubuntu VM (running on Proxmox) is strictly secured, limiting remote access exclusively to authorized users via SSH key-based authentication.
-
Mobile Client Security (React Native/Expo): Client-side risk is minimized by storing long-lived refresh tokens in the Encrypted Keychain (device-level secure storage), while short-lived access tokens are only held in volatile memory.
Core Technology Stack
| Component | Technology | Role | |
|---|---|---|---|
| Backend | Django REST Framework, Python | RESTful API, business logic, data processing. | |
| Frontend | Expo React Native | Cross-platform mobile application for doctor verification and printing. | |
| Hosting/Infra | Proxmox VM, Ubuntu Server | Self-hosted production environment and server management. | |
| Database | SQLite3 | Local data persistence and schema management. |
Innovation: Lidar & Machine Learning Pipeline
The platform introduces a sophisticated 3D measurement pipeline:
-
Lidar Scan Intake: A Lidar point cloud scan of the patient's face is collected via the frontend.
-
Feature Extraction: The scan is transmitted to the backend where a semi-supervised neural network is used to obtain and process critical facial features.
-
Measurement Generation: Extracted features are fed into a Linear Regression Machine Learning model to produce precise, patient-specific facial measurements.
-
3D Model Generation: These measurements generate a Parametric 3D model of custom glasses, optimized for 3D printing with flexible TPU polymer.
-
Clinical Verification: The final 3D model is sent back to the doctor via the frontend for final verification and print initiation.
Setup and Development
This project is currently self-hosted and configured for secure, collaborative development between three engineers.
Prerequisites
-
Node.js / npm
-
Python 3.x / Django
-
Access to the Proxmox environment (for server-side configuration)
-
A configured Tailscale account for secure network access.
Backend Setup
-
Clone the repository:
git clone [REPO_URL_BACKEND] -
Install Python dependencies:
pip install -r requirements.txt -
Apply database migrations:
python manage.py migrate -
Configure Nginx reverse proxy and Tailscale as per the included configuration files.
Frontend Setup
-
Clone the repository:
git clone [REPO_URL_FRONTEND] -
Install dependencies:
npm install -
Run the Expo application:
npx expo start
This project is currently under active development and intended for proprietary use.