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.
The entire infrastructure is designed for high security and performance, built on a secure, self-hosted foundation.
-
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.
| 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. |
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.
This project is currently self-hosted and configured for secure, collaborative development between three engineers.
-
Node.js / npm
-
Python 3.x / Django
-
Access to the Proxmox environment (for server-side configuration)
-
A configured Tailscale account for secure network access.
-
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.
-
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.