How kenzierivan/materialaize works
Materialaize is a web application for generating and evaluating self-healing polymer molecule candidates from a SMILES seed. A user submits a seed in the landing interface; the frontend requests molecule generation, presents candidate structures and metrics, and can request a text explanation. The FastAPI backend loads a ChemGPT model with a LoRA adapter, generates continuations, and computes validity, polymer, motif, diversity, and synthetic-accessibility metrics. The frontend also checks backend health and renders molecular structures. The README documents how to run the two services but does not describe further product behavior; some endpoint and frontend wiring is inferred from the sampled excerpts.
Main entry points: landing.tsx Landing workflow · app.py FastAPI service · adapter_model.safetensors LoRA adapter
Components 13
Web interface
- Landing workflow
materialaize/app/landing.tsx - Candidate results
materialaize/app/landing.tsx - Structure viewer
materialaize/app/landing.tsx
Molecule service
- FastAPI service
backend/app.py - SMILES generator
backend/app.py - Candidate metrics
backend/app.py - Health endpoint
backend/app.py - Explanation endpoint
backend/app.py
Model and explanation
- ChemGPT base model
- LoRA adapter
backend/model/adapter_model.safetensors
Other components
- Molecule designer
- Anthropic API
- SMILES Drawer
Connections 13
- Molecule designer → Landing workflow: submits seed
- Landing workflow → FastAPI service: requests generation
- FastAPI service → SMILES generator: calls
- SMILES generator → ChemGPT base model: generates with
- SMILES generator → LoRA adapter: loads adapter
- FastAPI service → Candidate metrics: computes metrics
- FastAPI service → Candidate results: returns candidates
- Landing workflow → Candidate results: updates view
- Landing workflow → Health endpoint: checks health
- Landing workflow → Explanation endpoint: requests explanation
- Explanation endpoint → Anthropic API: requests text
- Candidate results → Structure viewer: renders candidate
- Structure viewer → SMILES Drawer: draws structure