Well I think its a bargain at around £35, given that a fancy regular wall switch can cost quite a lot, and its very hard to find momentary versions.
I was going to have a go at building something myself, but by the time you find a nice touch screen, ESP32, PSU, etc not to mention a WAF enclosure that you could squeeze it all into, then it would have cost me just as much if not more.
The code is easy enough to figure out, those buttons are defined with this code (a lot of extra stuff for the styling, is not needed to make it work)
{"page":1,"comment":"----------- page 1 ------- "}
{"id":1,"obj":"btn","x":20,"y":250,"w":120,"h":160,"radius":15,"border_opa":255, "outline_width":3, "outline_pad":5, "outline_opa":0, "outline_color":"#E6523A","shadow_spread":15, "shadow_width":8, "shadow_color":"#E6523A", "shadow_opa":0, "text":" \uE91C\nWall","text_font":46,"text_color":"#FFFFFF"}
{"id":2,"obj":"btn","x":180,"y":250,"w":120,"h":160,"radius":15,"border_opa":255, "outline_width":3, "outline_pad":5, "outline_opa":0, "outline_color":"#E6523A","shadow_spread":15, "shadow_width":8, "shadow_color":"#E6523A", "shadow_opa":0, "text":" \uF1E1\nMain","text_font":46,"text_color":"#FFFFFF"}
{"id":3,"obj":"btn","x":340,"y":250,"w":120,"h":160,"radius":15,"border_opa":255, "outline_width":3, "outline_pad":5, "outline_opa":0, "outline_color":"#E6523A","shadow_spread":15, "shadow_width":8, "shadow_color":"#E6523A", "shadow_opa":0, "text":" \uE6B5\nDining","text_font":46,"text_color":"#FFFFFF"}
Put it this way I have more on order
PS I'm not affiliated with the manufacturer