I think a MAX7360 breakout board would be very handy (see http://pdfserv.maxim-ic.com/en/ds/MAX7360.pdf). I2C driven keypad controller with built-in debounce and support for 64 keys, dual gray-code/rotary encoder, 8x8 256-step PWM/LED driver in a 40TQFN package. A lot of hobby potential in a single chip, and TQFN is a PITA to work with on a single-user scale. I’m sure folks could come up with all kinds of creative ideas with a breakout board in hand
Yes, you can do a lot of these things directly on a uC. I’d much rather focus on my end design than spend time building, wiring, and coding yet another %^## keypad controller. Plus I2C rocks…