rustytime-server 0.3.4

🕒 blazingly fast time tracking for developers
rustytime-server-0.3.4 is not a library.
Visit the last successful build: rustytime-server-0.23.2

rustytime

🕒 blazingly fast time tracking for developers


If you want to try this project out, you can head over to https://rustytime.shymike.dev for a deployed version

Features

  • ✅ Time tracking
  • ✅ Stat visualization
  • ✅ WakaTime compatible
  • ✅ Fast and memory efficient

What is this?

rustytime is a simple WakaTime compatible backend that can be used to track time in any program with an existing plugin!

Installation

Compiling from source

Dependencies:

  • rust
  • docker
  • git
git clone https://github.com/ImShyMike/rustytime.git
cd rustytime
mv .env.example .env
# Edit the .env file before running docker compose
docker compose up

Pulling containers from dockerhub

Dependencies:

  • docker
  • curl
mkdir rustytime
cd rustytime
curl -O https://raw.githubusercontent.com/ImShyMike/rustytime/main/.env.example
curl -o docker-compose.yml https://raw.githubusercontent.com/ImShyMike/rustytime/main/docker-compose.yml
mv .env.example .env
# Edit the .env file before running docker compose
docker compose up

Usage

Simply run the docker compose and open the website at http://localhost:3000

Seeding the DB

The seed feature can be enabled in the build that seeds the database with a single user and 10000 heartbeats.

cargo run --features seed

Using cloudflare

To get the actual client IP's when behind cloudflare, enable the cloudflare feature.

cargo run --features cloudflare

WakaTime

When using a WakaTime client, point your requests to http://localhost:3000/api/v1 (or https://api-rustytime.shymike.dev/api/v1 if using the deployed version)

License

This project is licensed under the GNU GPLv3