/aw-server-rust

High-performance implementation of the ActivityWatch server, written in Rust

Primary LanguageRustMozilla Public License 2.0MPL-2.0

aw-server-rust

Build Status Coverage Status Dependency Status

A reimplementation of aw-server in Rust.

Caveats:

  • Lots of TODO and FIXME comments

Features missing compared to the Python implementation of aw-server:

  • API explorer (Swagger/OpenAPI)

How to compile

Install rust nightly with rustup:

rustup default nightly

Build with cargo:

cargo build --release

You can also build with make, which will build the web assets as well:

make build

Your built executable will be located in ./target/release/aw-server-rust. If you want to use it with a development version of aw-qt you'll want to copy this binary into your venv:

cp target/release/aw-server ../venv/bin/aw-server-rust

How to run

If you want to quick-compile for debugging, run cargo run from the project root:

cargo run --bin aw-server

NOTE: This will start aw-server-rust in testing mode (on port 5666 instead of port 5600).

Syncing

For details about aw-sync-rust, see the README in its subdirectory.