Custom UI for smartthings?

I was curious if it was possible to create a custom UI for Smartthings. If yes, then which API should I be looking at?

Sort of yes, not totally custom but using pre existing controls, see here: Custom Capability and CLI Developer Preview