Build a MIDI Controller with Arduino Uno

Hello everyone, I hope you're well :)

I'm new to the world of Arduino, that's why I'm here.

I am looking to build a MIDI Controller for my final year project using Arduino Uno.

The Controller ideally will have 5 different knobs to control parameters and another one to select the actual parameter to control, by turning it right or left so that the orange selector in Ableton will move accordingly.

Moreover, I'd like to incorporate a number of buttons to write live patterns while playing live or producing, along with Play, Stop, Rewind and Forwad buttons.

I found a few interesting suggestions regarding using PureData and Firmdata, along with the Arduino software, to connect the knobs and enable them to communicate with the music software. Does anybody else have any other suggestions or ways to approach this?

I still haven't found anything regarding Reading Buttons, could someone please point me to some good source of information? Moreover, should I have a PCB with a number of resistors and capacitor on it, which I'd then connect to the Arduino oard or will the Arduino One board be able to cope with it by itself?

I look forward to hear from you people :)

Many Thanks