-
-
Notifications
You must be signed in to change notification settings - Fork 4
docs: new blog post "Introduce aw-tauri" #34
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
base: master
Are you sure you want to change the base?
Changes from 1 commit
5c96d48
e19a25d
9e488ba
4bec6e9
d81f656
96dd276
830a496
ec8b2fd
f0deff7
3c806ad
a10f9d1
03f04fb
bb2e37e
043f9fd
838b7c1
0a93666
f06073a
68c0580
96bbdd6
4805cb6
38c888c
14f469b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
--- | ||
layout: post | ||
title: Tauri the future of ActivityWatch | ||
date: 2024-5-5 16:35 +0300 | ||
author: "Brian Vuku" | ||
author_twitter: "subrupt" | ||
--- | ||
|
||
We're excited to introduce a new project [aw-tauri](http://github.com/ActivityWatch/aw-tauri). Aw-Tauri is a lighter, faster cross-platform repackaging of ActivityWatch. As the name implies the project is built with [Tauri](https://Tauri.app), a relatively new toolkit that offers all the benefits of electron with none of the downsides! | ||
|
||
## Why Tauri | ||
|
||
Tauri apps are lightweight, memory efficient and secure by design. Tauri does not ship a renderer but uses the platform native renderer via webviews. This simple design choice makes the app size compact and memory efficient during runtime, as compared to electron apps. Tauri apps are secure, only interacting with the host systems through tauri apis. This protects the host computer from arbitary code execution (at least in theory). | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
While this is true if you build an app the "tauri way", we are running a HTTP server, so we still need to take precautions to not expose sensitive information to other network devices and websites. |
||
|
||
## Developer Experience | ||
|
||
Aw-tauri is built with the [rust server](https://github.com/ActivityWatch/aw-server-rust) serving the backend and a UI written in Vue. It takes almost no time to get upto speed with the project! | ||
0xbrayo marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Cross platform development before tauri was a hassle. Binaries had to be built and tested for each target platform separately. Tauri greatly simplifies this. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'd like to expand on this, going into our long history of struggling with PyInstaller etc. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah, you could write that bit... I'll add you as a co-author in the credits. I also considered showing the makefiles for before and after. Just how much easier it is to set up with Tauri. Might make the post too long Idk. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah, I don't see a ton of value in going into the details and quoting code, but we could drop some links to source files. |
||
|
||
Tauri enables us to generate releases from the same codebase through a CI/CD pipeline. It handles everything platform specific, on linux you get a lightweight ```.appimage```, on windows a ```.msi``` installer and ```.app``` on macos. It just works! | ||
0xbrayo marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
## User Experience | ||
|
||
Aw-Tauri aims to consolidate most of the functionality that is offered by additional code by other repos. It integrates the window and afk watchers natively. It offers support of notifications by default via [aw-notify](https://github.com/ActivityWatch/aw-notify). It houses its own webview, no need to visit ```http:localhost:5600``` anymore. Watchers can be started and stopped right from the trayicon. Updates can be pushed seemlessly across platforms provided by tauri's update system! | ||
0xbrayo marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
## Conclusion | ||
|
||
Aw-Tauri is still in active development and contributions are welcome and encouraged. More eyes on the code will be beneficial to the project. We are excited to see where this project goes and how it will shape the future of ActivityWatch. | ||
0xbrayo marked this conversation as resolved.
Show resolved
Hide resolved
|
Uh oh!
There was an error while loading. Please reload this page.