Skip to content

Commit 43cbad1

Browse files
authored
docs: added mermaid-diagram for visualization of architecture (#1086)
* docs: added WIP mermaid architecture diagram * docs: improvements to WIP mermaid diagram
1 parent 26fe779 commit 43cbad1

File tree

1 file changed

+30
-2
lines changed

1 file changed

+30
-2
lines changed

README.md

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
</p>
88

99
<p align="center">
10-
1110
<a href="https://twitter.com/ActivityWatchIt">
1211
<img title="Twitter follow" src="https://img.shields.io/twitter/follow/ActivityWatchIt.svg?style=social&label=Follow"/>
1312
</a>
@@ -33,7 +32,6 @@
3332
</p>
3433

3534
<p align="center">
36-
3735
<a href="https://github.com/ActivityWatch/activitywatch/actions?query=branch%3Amaster">
3836
<img title="Build Status GitHub" src="https://github.com/ActivityWatch/activitywatch/workflows/Build/badge.svg?branch=master" />
3937
</a>
@@ -181,6 +179,36 @@ We have a plan to address all of these and we're well on our way. See the table
181179
For a complete list of the things ActivityWatch can track, [see the page on *watchers* in the documentation](https://docs.activitywatch.net/en/latest/watchers.html).
182180

183181

182+
## Architecture
183+
184+
```mermaid
185+
graph TD;
186+
aw-qt -- Manages --> S;
187+
aw-qt -- Manages --> aw-notify -- Queries --> S;
188+
aw-qt -- Manages --> W1[aw-watcher-window] -- Watches --> S1[Active window] -- Heartbeats --> S[aw-server];
189+
aw-qt -- Manages --> W2[aw-watcher-afk] -- Watches --> S2[AFK status] -- Heartbeats --> S[aw-server];
190+
Browser -- Manages --> aw-watcher-web -- Watches --> S3[Active tab] -- Heartbeats --> S;
191+
SF -- Dropbox/Syncthing/etc --> SF;
192+
S <-- aw-sync --> SF[Sync folder];
193+
S -- Serves --> UI[aw-webui];
194+
195+
%% User -- Interacts --> UI;
196+
%% User -- Observes --> aw-notify;
197+
%% User -- Interacts --> aw-qt;
198+
199+
classDef lightMode fill:#FFFFFF, stroke:#333333, color:#333333;
200+
classDef darkMode fill:#333333, stroke:#FFFFFF, color:#FFFFFF;
201+
202+
classDef lightModeLinks stroke:#333333;
203+
classDef darkModeLinks stroke:#FFFFFF;
204+
205+
class A,B,C,D,E,G lightMode;
206+
class A,B,C,D,E,G darkMode;
207+
208+
%% linkStyle 0 stroke:#FF4136, stroke-width:2px;
209+
%% linkStyle 1 stroke:#1ABC9C, stroke-width:2px;
210+
```
211+
184212
## About this repository
185213

186214
This repo is a bundle of the core components and official modules of ActivityWatch (managed with `git submodule`). Its primary use is as a meta-package providing all the components in one repo; enabling easier packaging and installation. It is also where releases of the full suite are published (see [releases](https://github.com/ActivityWatch/activitywatch/releases)).

0 commit comments

Comments
 (0)