# yipihey/impress-apps architecture

> Architecture diagram of the GitHub repository yipihey/impress-apps, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/yipihey/impress-apps
- Repository: https://github.com/yipihey/impress-apps

## Overview

impress is a suite of academic productivity apps sharing Rust services and native SwiftUI interfaces. The best-evidenced user workflow here is imbib search: user input is classified and parsed or rewritten, then the app’s automation/source layer handles lookup. The README also describes reference management, collaborative writing, scientific visualization, agent orchestration, and shared modal editing. The supplied tree and excerpts cover only a slice of those systems, so several capabilities are shown at their documented directory level; uncertain internal links are omitted.

Main entry points: [`apps/imbib/imbib`](https://github.com/yipihey/impress-apps/tree/main/apps/imbib/imbib) (imbib app), [`apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Automation`](https://github.com/yipihey/impress-apps/tree/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Automation) (Automation service), [`crates/impress-helix/src/text_engine.rs`](https://github.com/yipihey/impress-apps/blob/main/crates/impress-helix/src/text_engine.rs) (Modal editing), [`apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Sync/CloudSyncEngine.swift`](https://github.com/yipihey/impress-apps/blob/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Sync/CloudSyncEngine.swift) (Cloud sync)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_imbib["Reference management"]
  node_imbibapp["imbib app"]
  node_automation["Automation service"]
  node_queryassist["Query assistance"]
  node_pubcore["Publication core"]
  node_sync["Cloud sync"]
end

subgraph group_shared["Shared platform"]
  node_smartsearch["Smart search"]
  node_sources["Publication sources"]
  node_annotations["Annotation storage<br/>[storage.rs]"]
  node_storequery["Store queries<br/>[query_service.rs]"]
  node_helix["Modal editing<br/>[text_engine.rs]"]
end

subgraph group_writing["Academic writing"]
  node_imprint["Collaborative writing"]
end

subgraph group_research["Research tools"]
  node_implore["Data visualization"]
  node_impel["Agent orchestration"]
end

node_user(("Researcher"))
node_cloudkit[("CloudKit")]
node_applemodels["Apple Intelligence"]

node_user -->|"uses"| node_imbibapp
node_imbibapp -->|"dispatches"| node_automation
node_automation -->|"invokes"| node_smartsearch
node_automation -->|"searches"| node_sources
node_smartsearch -.->|"may invoke"| node_applemodels
node_imbibapp -->|"requests previews"| node_queryassist
node_imbibapp -->|"manages references"| node_pubcore
node_pubcore -->|"stores annotations"| node_annotations
node_sync -->|"syncs records"| node_cloudkit
node_sync -->|"reads store"| node_storequery
node_imprint -->|"uses editing"| node_helix
node_implore -->|"uses editing"| node_helix
node_impel -->|"uses editing"| node_helix

click node_imbibapp "https://github.com/yipihey/impress-apps/tree/main/apps/imbib/imbib"
click node_automation "https://github.com/yipihey/impress-apps/tree/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Automation"
click node_smartsearch "https://github.com/yipihey/impress-apps/blob/main/packages/ImpressSmartSearch/Sources/ImpressSmartSearch/SmartSearchEngine.swift"
click node_queryassist "https://github.com/yipihey/impress-apps/blob/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Search/QueryAssistanceService.swift"
click node_sources "https://github.com/yipihey/impress-apps/tree/main/crates/impress-sources"
click node_pubcore "https://github.com/yipihey/impress-apps/tree/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore"
click node_annotations "https://github.com/yipihey/impress-apps/blob/main/crates/imbib-core/src/annotations/storage.rs"
click node_sync "https://github.com/yipihey/impress-apps/blob/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Sync/CloudSyncEngine.swift"
click node_storequery "https://github.com/yipihey/impress-apps/blob/main/crates/impress-store-service/src/query_service.rs"
click node_helix "https://github.com/yipihey/impress-apps/blob/main/crates/impress-helix/src/text_engine.rs"
click node_imprint "https://github.com/yipihey/impress-apps/tree/main/crates/imprint-core"
click node_implore "https://github.com/yipihey/impress-apps/tree/main/crates/implore-core"
click node_impel "https://github.com/yipihey/impress-apps/tree/main/crates/impel-core"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_imbibapp,node_automation,node_queryassist,node_pubcore,node_sync toneBlue
class node_smartsearch,node_sources,node_annotations,node_storequery,node_helix,node_cloudkit toneAmber
class node_imprint toneMint
class node_implore,node_impel toneRose
class node_user,node_applemodels toneIndigo
```

## Components

### Reference management

- [imbib app](https://github.com/yipihey/impress-apps/tree/main/apps/imbib/imbib): `apps/imbib/imbib`
- [Automation service](https://github.com/yipihey/impress-apps/tree/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Automation): `apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Automation`
- [Query assistance](https://github.com/yipihey/impress-apps/blob/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Search/QueryAssistanceService.swift): `apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Search/QueryAssistanceService.swift`
- [Publication core](https://github.com/yipihey/impress-apps/tree/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore): `apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore`
- [Cloud sync](https://github.com/yipihey/impress-apps/blob/main/apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Sync/CloudSyncEngine.swift): `apps/imbib/PublicationManagerCore/Sources/PublicationManagerCore/Sync/CloudSyncEngine.swift`

### Shared platform

- [Smart search](https://github.com/yipihey/impress-apps/blob/main/packages/ImpressSmartSearch/Sources/ImpressSmartSearch/SmartSearchEngine.swift): `packages/ImpressSmartSearch/Sources/ImpressSmartSearch/SmartSearchEngine.swift`
- [Publication sources](https://github.com/yipihey/impress-apps/tree/main/crates/impress-sources): `crates/impress-sources`
- [Annotation storage](https://github.com/yipihey/impress-apps/blob/main/crates/imbib-core/src/annotations/storage.rs): `crates/imbib-core/src/annotations/storage.rs`
- [Store queries](https://github.com/yipihey/impress-apps/blob/main/crates/impress-store-service/src/query_service.rs): `crates/impress-store-service/src/query_service.rs`
- [Modal editing](https://github.com/yipihey/impress-apps/blob/main/crates/impress-helix/src/text_engine.rs): `crates/impress-helix/src/text_engine.rs`

### Academic writing

- [Collaborative writing](https://github.com/yipihey/impress-apps/tree/main/crates/imprint-core): `crates/imprint-core`

### Research tools

- [Data visualization](https://github.com/yipihey/impress-apps/tree/main/crates/implore-core): `crates/implore-core`
- [Agent orchestration](https://github.com/yipihey/impress-apps/tree/main/crates/impel-core): `crates/impel-core`

### Other components

- **Researcher**
- **CloudKit**
- **Apple Intelligence**

## Connections

- Researcher → imbib app: uses
- imbib app → Automation service: dispatches
- Automation service → Smart search: invokes
- Automation service → Publication sources: searches
- Smart search → Apple Intelligence: may invoke
- imbib app → Query assistance: requests previews
- imbib app → Publication core: manages references
- Publication core → Annotation storage: stores annotations
- Cloud sync → CloudKit: syncs records
- Cloud sync → Store queries: reads store
- Collaborative writing → Modal editing: uses editing
- Data visualization → Modal editing: uses editing
- Agent orchestration → Modal editing: uses editing
