Allow user to edit markdown source.

Right now my app lets the user edit markdown source in a `<textarea>`. But I want the editing to be a nicer experience.

For example by changing the style of the source text depending on the markdown interpretation; a `**an emphasis**` should be shown in bold and a `# A Header` shown with an increased font-size. Or for example by showing control elements to insert new links, headers, quotes, etc.

Are there markdown libraries for React that implement such features?