I don't think NDK includes any UI components. But otherwise, just feature wise, NDK has most of the things that you need. On a project I am working on I had to use nostr-tools along with NDK for certain things, but didn't have to write any nostr specific logic by hand.