-
-
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 8 commits
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,31 @@ | ||
--- | ||
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 initiative [`aw-tauri`](http://github.com/ActivityWatch/aw-tauri), which 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 Rust-based toolkit that enables easy development of small, fast, and secure applications with a great developer experience. | ||
|
||
## 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. Security is a top priority for Tauri, and so it is for ActivityWatch. | ||
|
||
## 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! | ||
|
||
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 with a single command. 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! [Aw-sync](https://github.com/ActivityWatch/aw-server-rust/tree/c056e50646b45070c330de8a6dbd14042b3455e4/aw-sync) which is still in active development will be integrated into the app. Syncing data across devices will be just as seemless. We will work closely with the user community to make a product that we all love to use. | ||
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 hopeful that it will help solve many of our outstanding challenges, and are excited to see it 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.