This is a draft plan to get us back to a reasonably maintainable JS bridge stack
Part One - matrix-bot-sdk
The matrix-bot-sdk needs to be modernized to ease development, especially in a world where we have less time to work on it. The order of things to work on, in order:
- Drop eslint/linting tools and replace with oxlint/oxfmt
- Use vitest across codebase.
- Update dependencies / integrate Renovate.
- Switch to pnpm
- Ensure GitHub workflows are working correctly and up to date.
Part Two - matrix-appservice-*
We (Element) also maintain matrix-appservice-node and matrix-appservice-bridge. These projects have heavy overlap with this one, and -bridge consumes both this project and -node. Ideally, we would intern these projects into a single repository and use monorepos to separate out the different layers.
The same steps above would apply to these two.
Once this is done, it should be easier to maintain the whole stack without having to bounce between projects and update them.
This is a draft plan to get us back to a reasonably maintainable JS bridge stack
Part One - matrix-bot-sdk
The matrix-bot-sdk needs to be modernized to ease development, especially in a world where we have less time to work on it. The order of things to work on, in order:
Part Two - matrix-appservice-*
We (Element) also maintain matrix-appservice-node and matrix-appservice-bridge. These projects have heavy overlap with this one, and -bridge consumes both this project and -node. Ideally, we would intern these projects into a single repository and use monorepos to separate out the different layers.
The same steps above would apply to these two.
Once this is done, it should be easier to maintain the whole stack without having to bounce between projects and update them.