How i3t4an/yaktrace works
YakTrace is a local research tool that captures one locked historical feed window, repeats captures after hiding post sources, and produces a PDF dossier from differences between consecutive snapshots. The CLI owns authentication, group selection, window locking, hide/unhide actions, and workflow sequencing; the collector retrieves paged feeds, while the SQLite database stores capture evidence and builds the report model. The excerpts show the main module relationships, but do not expose the connector implementation or all report-model details.
Main entry points: cli.js Workflow CLI · SnapshotCollector.js Snapshot collector · AnalyticsDatabase.js SQLite evidence store · index.mjs Sidechat API client
Components 15
Capture workflow
- Workflow CLI
YakTrace/src/cli.js - Account authentication
YakTrace/src/cli.js - Group selection
YakTrace/src/cli.js - Source hide actions
YakTrace/src/cli.js
Feed collection
- Sidechat API client
sidechat.js/dist/index.mjs - Snapshot collector
YakTrace/src/SnapshotCollector.js - Fixed UTC window
YakTrace/src/SnapshotCollector.js
Evidence store
- SQLite evidence store
YakTrace/src/AnalyticsDatabase.js - Snapshot records
YakTrace/src/AnalyticsDatabase.js - Raw feed responses
YakTrace/src/AnalyticsDatabase.js - Parent-child differences
YakTrace/src/AnalyticsDatabase.js - Final self-post capture
YakTrace/src/AnalyticsDatabase.js
Dossier reporting
- PDF dossier generator
YakTrace/src/PdfReport.js
Other components
- Operator
- YikYak service
Connections 19
- Operator → Workflow CLI: runs commands
README.md - Workflow CLI → Account authentication: authenticates
YakTrace/src/cli.js - Workflow CLI → Group selection: selects group
YakTrace/src/cli.js - Workflow CLI → Source hide actions: hides and unhides
YakTrace/src/cli.js - Workflow CLI → Snapshot collector: starts captures
YakTrace/src/cli.js - Workflow CLI → SQLite evidence store: reads and clears
YakTrace/src/cli.js - Workflow CLI → PDF dossier generator: generates report
YakTrace/src/cli.js - Account authentication → Sidechat API client: uses client
YakTrace/src/cli.js - Group selection → Sidechat API client: fetches memberships
YakTrace/src/cli.js - Source hide actions → Sidechat API client: changes hidden sources
YakTrace/src/cli.js - Snapshot collector → Sidechat API client: fetches feed pages
YakTrace/src/SnapshotCollector.js - Snapshot collector → Fixed UTC window: filters by time
YakTrace/src/SnapshotCollector.js - Snapshot collector → SQLite evidence store: records captures
YakTrace/src/SnapshotCollector.js - Snapshot collector → Snapshot records: updates progress
YakTrace/src/SnapshotCollector.js - Snapshot collector → Raw feed responses: saves page payloads
YakTrace/src/SnapshotCollector.js - SQLite evidence store → Parent-child differences: computes report groups
YakTrace/src/AnalyticsDatabase.js - SQLite evidence store → Final self-post capture: selects self posts
YakTrace/src/AnalyticsDatabase.js - PDF dossier generator → SQLite evidence store: loads report model
YakTrace/src/PdfReport.js - Sidechat API client → YikYak service: calls service