For me, it is not the ability to write plugins : most editors have those to some extent.
For me it's more about the ease of writing your own customizations and not be limited to those provided by your plugins.
A few examples
- don't like some built in or plugin behavior ? Copy paste the original source code, tweak it to your likint and use add-advice to use your new version
- just yesterday i had some tests which generated a log in a temporary folder, 5 folders deep. I wrote a new command and bound it to a shortcut that looked for the new log file and opened it after running my tests
- i wrote a simple log browser : use a few commands to preformat the file with query/replace, and boom with emacs' outline mode i can fold sections /subsections. This command is 10 lines long.
The strength of emacs is not its plugins, it's your ease of making it your own
web-mode is well suited for most web dev.
I used it extensively for vue.js (html/css/typescript in the same file) and it worked well. Pretty sure it should be fine for typescript + jsx
As for the language server, it seems that typescript-language-server is the way to go (see)
Give it a try, i'm pretty sure that those two things will cover 90% of your needs