I would be surprised if emacs couldn't do the same.
1. https://github.com/neoclide/coc.nvim
2. https://github.com/williamboman/mason.nvim