# Rsi-break , small timer so you remember to rest your hands

**URL:** https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955
**Category:** Show and Tell
**Created:** [October 27, 2023, 5:47pm UTC](https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955 "2023-10-27T17:47:25Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![slack1256](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@slack1256](https://discourse.haskell.org/u/slack1256)
#### Post date: [October 27, 2023, 5:47pm UTC](https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955/1 "2023-10-27T17:47:25Z")

</div>

Hello all,

I made a quick timer app on `monomer` mainly as a learning exercise on how composites worked. But it has been really useful to remember to take breaks when coding. I am sharing in case anyone want a quick tutorial on monomer or ends up being useful.

- [Hackage](https://hackage.haskell.org/package/rsi-break-0.1.0.0)
- [Github](https://github.com/RubenAstudillo/rsi-break)

 ![dfcJWBj](https://us1.discourse-cdn.com/flex002/uploads/haskell/original/2X/2/24d37aa4be233f9ad75e7378b4cc29f975263337.png)

Interesting facts:

- It is using `config-ini` bidirectional parser for configuration on XDG directories. These are auto saved when the settings are modified if they are on the allowed values.
- Popup window is a separate binary shipped on cabal. If you have `mpv` installed there is also a _ding_ sound. (is there a cross platform way to play .wav files? SDL?)
- Event management between composites is not straight forward but not difficult. Killing the timer threads via monomer events is a demo on how this is done.

---

<div class="post-metadata">

### Author: ![f-a](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/f-a/32/2740_2.png) [@f-a](https://discourse.haskell.org/u/f-a)
#### Post date: [October 27, 2023, 6:09pm UTC](https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955/2 "2023-10-27T18:09:58Z")

</div>

Congrats! I don’t see the link though?

---

<div class="post-metadata">

### Author: ![slack1256](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@slack1256](https://discourse.haskell.org/u/slack1256)
#### Post date: [October 27, 2023, 7:39pm UTC](https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955/3 "2023-10-27T19:39:52Z")

</div>

Do’h. Thank f-a. I edited the original post.

---

<div class="post-metadata">

### Author: ![Ambrose](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ambrose/32/5672_2.png) [@Ambrose](https://discourse.haskell.org/u/Ambrose)
#### Post date: [October 28, 2023, 4:07am UTC](https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955/4 "2023-10-28T04:07:30Z")

</div>

Love it! Tbh this is a solid pomodoro timer too - ai like 25 on 5 off.

---

<div class="post-metadata">

### Author: ![Ambrose](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ambrose/32/5672_2.png) [@Ambrose](https://discourse.haskell.org/u/Ambrose)
#### Post date: [October 28, 2023, 4:07am UTC](https://discourse.haskell.org/t/rsi-break-small-timer-so-you-remember-to-rest-your-hands/7955/5 "2023-10-28T04:07:48Z")

</div>

Thank you for being a monomer pioneer too!
