Move inline js to typescript #24

Closed
opened 2026-09-16 08:03:13 -07:00 by rays · 1 comment
Owner

Currently all script is in the html, move this to be separate typescript file(s)

Use https://github.com/PerryTS/perry to compile into js when deploying.

This will allow better auditing and code review of ts/js elements of this code base

Currently all script is in the html, move this to be separate typescript file(s) Use https://github.com/PerryTS/perry to compile into js when deploying. This will allow better auditing and code review of ts/js elements of this code base
rays added the enhancement label 2026-09-17 13:25:10 -07:00
rays added a new dependency 2026-09-17 13:26:25 -07:00
Author
Owner

Done in 26802d2, deployed, with swc instead of Perry (Perry builds native programs, not browser JavaScript). The script is in web/src/*.ts, split along its existing sections: util, feeds, feedpage, items, player, dialogs, events, and login. They are one script in one scope, concatenated in the order web/build.mjs lists them, not ES modules; that kept the change a move rather than a rewrite. npx tsc -p . type-checks them, loosely for now: strict is off and the DOM lookup helper returns any. Tightening that is a follow-up if you want it.

Done in 26802d2, deployed, with swc instead of Perry (Perry builds native programs, not browser JavaScript). The script is in web/src/*.ts, split along its existing sections: util, feeds, feedpage, items, player, dialogs, events, and login. They are one script in one scope, concatenated in the order web/build.mjs lists them, not ES modules; that kept the change a move rather than a rewrite. npx tsc -p . type-checks them, loosely for now: strict is off and the DOM lookup helper returns any. Tightening that is a follow-up if you want it.
rays closed this issue 2026-09-18 05:42:39 -07:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Blocks
Reference: rays/ipodderx-rs#24