What's the easiest/most efficient way to set up a high quality UI/front-end for RAG?

I'm looking for recommendations either for Open Source RAG UI projects or advice on how tricky it would be to create your own interface based on the following features that I'd like to prioritize:

1) Support for streaming responses

2) High quality citations that are clickable and pull up the reference document/section being retrieved

3) Ability to switch out the back-end code and personalize it for my use cases