roflbofl322 / stalker

A thing that watches everything everything I do.

Home Page:https://api.kognise.dev/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Stalker 😌

You know that thing on my website that shows what I'm doing? Well, it used to be manually updated, but that got boring.

Now I have a complex system of janky programs that culminate in a bunch of if-then statements that generate that status! It even updates my Slack. I'm unstoppable.

API

Consumable at https://api.kognise.dev/ and deployed on the glorious Fly.io.

Public endpoints:

  • / - Get current activity and now playing song
  • /history - Get full activity history
  • /dash - Access web dashboard (only I can update statuses)

Kognise-only endpoints:

  • /manual - Manually update status
  • /manual/clear - Clear manual status
  • /ping/:key - Signify activity for a device class
  • /list/:key/:sourceDevice - Update browser tabs or running apps
  • /zoom - Zoom webhook updates

Other

Compile StalkerMini (mobile app) to an APK with Gradle, I just used Android Studio.

Stalkerd (desktop daemon) needs a .password file to compile, which Rust embeds in the binary. Don't share the binary! I made this technical decision because I'm lazy.

The browser extension is quite cursed. If it doesn't work, you'll have to open the dev console; the error message should explain how to set the password.

Stalkerd is not cross-platform yet, only supports macOS.

Todo

  • Hot and sexy stats and graphs
  • Some way to let me know if something is breaking on the backend
  • Figure out why StalkerMini sometimes gets yeeted by the system
  • Identify why Zoom occasionally doesn't work
  • Improve code quality (lmao as if)

About

A thing that watches everything everything I do.

https://api.kognise.dev/

License:MIT License


Languages

Language:TypeScript 57.1%Language:Kotlin 14.3%Language:HTML 13.8%Language:Rust 11.3%Language:JavaScript 3.1%Language:Dockerfile 0.3%