---
date: 2026-01-07 22:31:29
categories:
  - Releases
---

# Version 0.1.35

This release delivers a major refactoring of the frontend codebase, splitting the monolithic app.js into dedicated feature modules for better maintainability and developer experience.

## Refactoring

- Split app.js into six dedicated feature modules using dependency injection pattern:
  - `utils.js` (402 lines): Pure utility functions
  - `flashcards.js` (775 lines): FlashcardFeature class
  - `committee.js` (528 lines): CommitteeFeature class
  - `matrix.js` (846 lines): MatrixFeature class
  - `factcheck.js` (691 lines): FactcheckFeature class
  - `research.js` (348 lines): ResearchFeature class
- Reduced app.js from ~8,479 to 5,503 lines (35% reduction). (d1c6221) (Eric Ma)

## Technical Details

- All feature modules use lazy initialization via getters in App class
- Feature modules are reset when graph changes to ensure fresh state
- All 55 JS tests and 48 Python tests pass
