assemblee-virtuelle / assemblee-virtuelle/semapps

Move middleware codebase to TypeScript

Open
#1,365 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
103
Forks
14
Avg merge
1m
Merged PRs (30d)
2

Description

From a developer experience point of view, it can be extremely hard to know what the type of an object in a moleculer service might look like. Also, many service actions do not have parameter checks enabled.
With ldo that we are implementing soon, there will be improvements on that front as well.
Note that the frontend supports ts already.

Node 23.6 now supports type-stripping out of the box. Deno as a potential runtime alternative seems to be almost compatible out of the box. There are other approaches to running typescript too, among them tsx, swc, tsc.

There are a few things to consider:
- We need to keep support for users of the framework that still use javascript.
- Moleculer is javascript based. There is an [open PR](https://github.com/moleculerjs/moleculer/pull/829) to improve type support. Maybe this is coming in v0.15 but we might as well take the PR and add the feature to the type namespace by ourselves for the time being.

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue does not name files, tests, or an entry point. Start by inventorying the middleware codebase and reviewing open PR 829, then compare the Node 23.6, Deno, tsx, swc, and tsc approaches. Done means middleware has TypeScript support while users who still use JavaScript remain supported.

Written by the indexing model from the issue text.

Assessment

Tech stack
deno, javascript, node.js, typescript
Domain
backend, developer-experience
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.