How pari-kulkarni/email-tracker works
AIMC Email Study is a browser-based research app for collecting two sequential email drafts and the interaction history behind them. Participants start or resume by PID, write with chat and autocomplete available, send each email, then review a log and comparison; researchers reopen sessions and export or delete study data. The server coordinates sessions, event storage, and AI endpoints, while shared analysis derives revisions and other measures for logs and exports. The README documents several capabilities whose implementation was not sampled, so those links are shown only where documented.
Main entry points: server.js HTTP study server · app.js Writing app · researcher.js Researcher page · analysis.js Event analysis
Components 18
Participant workflow
- Writing app
public/app.js - Study scenarios
config/scenarios.json - Participant roster
config/participants.csv - Edit and replay logic
public/core.js
Session services
- HTTP study server
server.js - Session and event files
server.js - Study settings
config/config.json - AI chat service
server.js - Autocomplete service
server.js - Anthropic API
Review and analysis
- Event analysis
public/analysis.js - Email log view
public/logview.js - Email comparison
public/logview.js
Researcher tools
- Researcher page
public/researcher.js - CSV and data exports
server.js - Session deletion
server.js
Other components
- Participant
- Researcher
Connections 25
- Participant → Writing app: starts writing
README.md - Writing app → HTTP study server: starts session
public/app.js - HTTP study server → Participant roster: checks PID
README.md - HTTP study server → Study scenarios: loads scenarios
README.md - Writing app → Study settings: loads settings
README.md - Writing app → Edit and replay logic: uses edit logic
README.md - Writing app → HTTP study server: sends events
- Writing app → HTTP study server: sends email
public/app.js - HTTP study server → Session and event files: writes session data
server.js - HTTP study server → Edit and replay logic: replays edits
server.js - HTTP study server → Event analysis: builds exports
server.js - Writing app → AI chat service: requests chat
public/app.js - Writing app → Autocomplete service: requests suggestions
public/app.js - AI chat service → Anthropic API: calls when configured
README.md - Autocomplete service → Anthropic API: calls when configured
README.md - Participant → Email log view: reviews sent email
README.md - Email log view → Event analysis: renders analysis
public/logview.js - Participant → Email comparison: compares emails
README.md - Email comparison → Event analysis: renders analysis
public/logview.js - Researcher → Researcher page: opens sessions
README.md - Researcher page → HTTP study server: loads session data
public/researcher.js - Researcher page → CSV and data exports: downloads data
public/researcher.js - CSV and data exports → Event analysis: derives CSV rows
server.js - Researcher page → Session deletion: requests deletion
public/researcher.js - Session deletion → Session and event files: removes participant data
README.md