element-hq / element-hq/element-web

Implementing hot reload for better developer experience

Open
#18,201 7 comments 2 reactions 0 assignees View on GitHub
A-Developer-Experience O-Frequent S-Minor T-Enhancement T-Epic
Dominant language
TypeScript
Stars
13.5k
Forks
2.8k
PR merge metrics
PR metrics pending

Description

Currently the element-web does not support hot reloading modules while developing, this is a case for both css and js/ts files. Hot module reloading, even only for css, would immensly improve developer experience and slightly lower development time for more complex features. Including it for React components additionally would improve the experience even more.

Currently we're not really decided, but there are a couple of ways we could go there:
* Upgrade webpack & deps and make the hot module work with webpack
* Replace webpack with Snowpack and do it all there
* Replace Webpack with Vite and do it all there

I think I'll gladly remove webpack and go for Snowpack, as ESBuild, which is used by snowpack underneath, is unbelievably fast compared to webpack, which will definitely make the development much more pleasureable too.

Current status:

- [x] Basic and hacky CSS hot reload working (https://github.com/matrix-org/matrix-react-sdk/pull/6524)
- [ ] More advanced and faster CSS hot reload
- [x] HMR for JS&Typescript
- [x] HMR for React components

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.