Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency graph #18

Open
isbur opened this issue May 21, 2020 · 2 comments
Open

Update dependency graph #18

isbur opened this issue May 21, 2020 · 2 comments

Comments

@isbur
Copy link

isbur commented May 21, 2020

Recent changes are not reflected in the dependecy graph here: https://docs.activitywatch.net/en/latest/architecture.html

Is there any abstract model to be described there? For example, for me it is a bit confusing to face two implementations of server and at least three implementations of client. And I'm talking only about reading the docs, not to mention presence of many more repositories on GitHub with names implying that there are even more implementations of everything.

@ErikBjare
Copy link
Member

Not quite sure what the confusion is here, but that page could probably need an update so let's try to clear it up.

The clients are just libraries, and there are several to accommodate different languages from which you might want to connect to the server.

The two server implementations are due to a rewrite of the original aw-server in Python into our Rust implementation aw-server-rust (better performance, works on Android, etc). Eventually the Python implementation will go away, as we migrate to the Rust implementation.

Watchers are for collecting different types of activity, they use one of the client libraries under the hood (usually the original aw-client, written in Python).

Is there any abstract model to be described there?

Not quite sure what this means? I suppose the dependency graph isn't really about "Architecture" per se, but rather which modules use/depend on which other modules.

Did I clear up your confusion? What would you expect to be explained/updated on the page?

@isbur
Copy link
Author

isbur commented Jun 19, 2020

Is there any abstract model to be described there?

Not quite sure what this means?

I meant an abstract aw-server and other modules interfaces description independent from realization details. For me "architecture" is exactly about modules and their interactions, however, it's worth mentioning that one can speak about the architecture on different scales - a la micro- and macro- levels

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants