As discussed, the more you move toward a stateless server-side controller and the rich client architecture of Lightning Components, the more options open up to you in leveraging client-side components not presently provided by Salesforce. The Lightning Component library, at the time of writing, is growing fast, so you should always check the Lightning Component Reference first (https://developer.salesforce.com/docs/component-library/overview/components)!
Consider the use of third-party UI libraries carefully on a per-case basis (not all of your application UI has to use the same approach) and make sure that you appreciate the value of the platform features that you are leaving behind. Expect to adjust your expectations around your client developer's skills, velocity, and tooling. Libraries such as AngularJS, React, View...