Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions docs/architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Architecture Overview

This project implements a modular delta load ETL pipeline for bookmark data.
It is composed of several pieces that work together to fetch, process, enrich,
and monitor bookmark information.

## Core Pipeline
- **`BookmarkDeltaETL`**: orchestrates extraction, transformation, and loading
while tracking changes between runs.
- **Fetchers**: pluggable modules such as `RaindropFetcher` and `GitHubFetcher`
pull bookmark data from different services.
- **`AIBookmarkEnricher`**: adds semantic analysis and metadata using AI
models.

## Scheduling and Monitoring
- **`DeltaScheduler`**: runs the pipeline on a schedule, handles source
fetching, optional AI enrichment, and report generation.
- **`delta-monitor.ts`**: collects statistics about processed bookmarks to aid
in monitoring and reporting.
Comment on lines +18 to +19

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

For consistency with the other components listed, which use class names (e.g., BookmarkDeltaETL, DeltaScheduler), it would be clearer to refer to the DeltaMonitor class instead of the filename delta-monitor.ts.

Suggested change
- **`delta-monitor.ts`**: collects statistics about processed bookmarks to aid
in monitoring and reporting.
- **`DeltaMonitor`**: collects statistics about processed bookmarks to aid
in monitoring and reporting.


## Typical Workflow
1. Fetch bookmark sources.
2. Run the delta ETL to detect additions and updates.
3. Enrich changed bookmarks with AI-generated insights.
4. Generate daily reports and clean up old data.

For more usage examples, see the main [README](../README.md) and
[Delta Load Guide](../delta-load-guide.md).