P2SH in Hardware wallet? I am designing a hardware wallet and the software that will work with it. 

I plan to provide P2PKH transactions support in the software for hardware wallet to sign.

Is it mandatory to support P2SH transactions ?

In my learning and use of bitcoin I have not come across P2SH transactions.

If its mandatory how does Ledger nano/ Trezor do it? 

Im a little lost with how to support P2SH transactions from UI/UX point of view too.

P2PKH are simple one-one transaction to receiver Pubkey. Any help on P2SH would be really great. Thanks in advance. Sorry if this question sounds novice, Im in learning curve.
If you have a look at https://github.com/bitcoin/bips you can find all BIP's. Scrolling down to the README, you will find the list number and title of every BIP and the current status. The BIP process with definitions for the status codes and other aspects is in BIP0002. At the top of the page you can search for P2SH or Pay to Script Hash and find many matches. BIP0016 seems to be particularly relevant but is certainly not the only source.

There are several BIP's dealing with aspects of P2SH and I would suggest that you should support P2SH transactions as they are a standard type of transaction that your end users may receive, although, being able to create P2SH transactions is probably not necessary. Check the BIP's.

You may also be interested in the [bitcoin-dev] mailing list.