I wanted a really simple stand reminder app in my system tray to remind me to stand up once in a while while working at my standing desk. (I started getting lazy and sitting most of the day instead of standing!) After trying a couple of apps on macOS, I didn’t have much success. One didn’t even pop up notifications or the selected sound effect, and the other one was paid only.
I thought I would just make a quick (and dirty) solution that worked for me using Rust.
Get the source and build your own copy here
Remember to Stand is a simple app run from the command line to remind you to stand up every now and then while working.
I’m no Rust expert but have been intrigued with the language, and hence decided to write a simple utility to remind myself to stand up every now and then at my desk.
If you don’t have a standing desk, you might want to use this to remind you to stand and take a walk around every now and then to stretch your legs.
The stand reminder app has a customisable time delay between the two different notification modes. It will pop up ‘toast’ notifications with a sound effect on each notification between standing and sitting mode.
When run, it will add a small icon in the system tray area (tested on macOS and uBuntu Linux 22.04).
Build
To build you’ll need to have the Rust tool chain with cargo installed. Compile into a single executable file with:
./make.sh build
Run
Once built, you can run the executable directly – e.g. `./target/debug/remember-to-stand`, or run directly from source with:
cargo run
Install
To install, build the app in release mode with:
./make.sh build --release
Then you can place the release executable in a convenient location. (For now you’ll need to copy the system tray icon and sound file to the same location too – copy from the ./resources or the target build directory to the same path that you place the executable in)
Configure
The app will automatically create a default configuration file in your user home path: ~/.remembertostand. You can edit this file to change the notification title text messages and customise the time delays between sitting and standing modes.
For example:
{ "config": { "customstandmsg": "Stand up", "standtimesecs": "3600", "sittimesecs": "3600", "customsitmsg": "Sit down" } }
I have not tested the app much more than my own system running macOS 12.4 (Montery), but given that its written in Rust it should be fairly portable.
I have tested the toast notifications on a linux system with gnome desktop, so I know that at least that component should work on that environment.
Give it a quick try by building with Rust for own system if you need something simple like I did for stand up reminders.