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

docs: new blog post "Introduce aw-tauri" #34

Open
wants to merge 22 commits into
base: master
Choose a base branch
from
Open
Changes from 6 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
5c96d48
feat: Introduce aw-tauri as a lightweight, cross-platform alternative…
0xbrayo May 3, 2024
e19a25d
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 3, 2024
9e488ba
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 3, 2024
4bec6e9
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 3, 2024
d81f656
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 3, 2024
96dd276
Minor formattting
0xbrayo May 4, 2024
830a496
feat: briefly mention Aw-sync
0xbrayo May 4, 2024
ec8b2fd
feat: fix broken link
0xbrayo May 4, 2024
f0deff7
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 8, 2024
3c806ad
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 8, 2024
a10f9d1
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 8, 2024
03f04fb
Update _posts/2024-05-5-introducing-tauri.md
0xbrayo May 8, 2024
bb2e37e
Update dates
0xbrayo May 8, 2024
043f9fd
Final touches
0xbrayo May 12, 2024
838b7c1
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo May 15, 2024
0a93666
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo May 15, 2024
f06073a
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo May 15, 2024
68c0580
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo May 15, 2024
96bbdd6
move user experience up. add autostart as a feature
0xbrayo May 16, 2024
4805cb6
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo Jul 8, 2024
38c888c
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo Jul 8, 2024
14f469b
Update _posts/2024-05-13-introducing-tauri.md
0xbrayo Jul 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions _posts/2024-05-13-introducing-tauri.md
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid renaming the file before we publish, it makes it hard to read the diff.

Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
layout: post
title: Tauri the future of ActivityWatch
date: 2024-5-13 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 [aw-server-rust](https://github.com/ActivityWatch/aw-server-rust) serving the backend together with [aw-webui](https://github.com/ActivityWatch/aw-webui). We have taken care to keep the codebase lean and clean, such that it takes very little time to get acquainted with the codebase.

In our current build process, we rely heavily on PyInstaller for building the modules written in Python. This has been an enduring source of problems, and many developer weeks (if not months) have been spent trying to work out all the issues over the years (especially macOS support, because of the need to codesign a very messy `.app` bundle).

With Tauri, they have handled most of the heavy lifting, and make it easy to produce working binaries for all target platforms. Much of this is simply due to Rust (avoids PyInstaller), but the added tooling for codesigning and producing suitable bundles for each platform: on Linux you get a lightweight `.AppImage`, on windows a `.msi` installer, and `.app` on macOS.

## User Experience

`aw-tauri` aims to consolidate much of the functionality that is currently implemented in [`aw-qt`](https://github.com/ActivityWatch/aw-qt), [`aw-server-rust`](https://github.com/ActivityWatch/aw-server-rust), and [`aw-notify`](https://github.com/ActivityWatch/aw-notify).

- It houses its own webview, no need to visit `http://localhost:5600` in your browser anymore.
- Watchers can be started and stopped right from the trayicon, just like in `aw-qt`.
- Updates can be pushed seemlessly across platforms provided by tauri's update system!
- [aw-sync](https://github.com/ActivityWatch/aw-server-rust/tree/master/aw-sync), which is still in active development, will be integrated into the app. Syncing data across devices will be just as seamless.

These are only the first steps to getting aw-tauri usable, but most of all it serves as a stable foundation enabling many improvements down the line.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should probably move this section above the "Developer Experience" section.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I want to change this line to something else.


## Conclusion

`aw-tauri` is still in active development, contributions are welcome and encouraged!

Check out the [README](https://github.com/ActivityWatch/aw-tauri/blob/master/README.md) to see the status of development, and where you can help out.

We are hopeful that it will help solve many of our remaining challenges, and are excited to see it help shape the future of ActivityWatch.
Comment on lines +37 to +43
Copy link
Member

@ErikBjare ErikBjare Jul 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to add links here to an early release that people can test themselves (possibly with many caveats).

31 changes: 0 additions & 31 deletions _posts/2024-05-5-introducing-tauri.md

This file was deleted.