From 7aa215bba42be79c97f50306ff1f572a950095fe Mon Sep 17 00:00:00 2001 From: Danny Kim Date: Mon, 12 Oct 2026 21:31:36 +0900 Subject: [PATCH 1/4] Switch TypeScript rules from Deno to Node and Vite+ --- README.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 815b9e0..c3c2a19 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ Languages are allowed only if they meet **all** of the following criteria: - Java is not allowed; use Kotlin instead. 2. **Type safety** - For Python, type hints with a strict type checker are mandatory. - - Use TypeScript instead of JavaScript. + - Use TypeScript instead of JavaScript. Only `.ts` files are allowed, including config files; `.js`, `.mjs`, `.cjs`, `.jsx`, and `.tsx` are not allowed. 3. **Concurrency support** - Event-driven, async models only. - Thread-based models are not allowed. @@ -34,7 +34,7 @@ For Python, always use `uv`, `ruff`, and `ty` for code quality. ## Frontend -A **no-framework approach is mandatory**. Always focus on web standards. Web components composed of pure HTML, CSS, and JavaScript must be used. Third-party frameworks do not guarantee long-term security, stability, or continued adoption. +A **no-framework approach is mandatory**. Always focus on web standards. Web components composed of pure HTML, CSS, and TypeScript must be used. Third-party frameworks do not guarantee long-term security, stability, or continued adoption. By using only web components, we achieve: @@ -55,7 +55,10 @@ This means banned options include, but are not limited to: Currently approved options are: -- Lit -- Raw TypeScript +- [Lit](https://lit.dev) +- [Web Awesome](https://webawesome.com) +- [Raw TypeScript](https://www.typescriptlang.org) -For all TypeScript projects, always prefer Deno over Node. Deno provides built-in support for type-checking, linting, formatting, and bundling. +For new and migrated TypeScript projects, use [Node.js](https://nodejs.org) (24 LTS) with [Vite+](https://viteplus.dev) (`vp`). Vite+ provides linting (Oxlint), formatting (Oxfmt), type checking, testing (Vitest), and bundling (tsdown). + +The only config files in each TypeScript project are `package.json`, `tsconfig.json`, and `vite.config.ts`. -- 2.52.0 From 0ce3b7e92a256e164c5238fb23c241828b2dd2ce Mon Sep 17 00:00:00 2001 From: Danny Kim Date: Mon, 12 Oct 2026 21:41:55 +0900 Subject: [PATCH 2/4] Split the TypeScript-only rule into its own line --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c3c2a19..e56467f 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,8 @@ Languages are allowed only if they meet **all** of the following criteria: - Java is not allowed; use Kotlin instead. 2. **Type safety** - For Python, type hints with a strict type checker are mandatory. - - Use TypeScript instead of JavaScript. Only `.ts` files are allowed, including config files; `.js`, `.mjs`, `.cjs`, `.jsx`, and `.tsx` are not allowed. + - Use TypeScript instead of JavaScript. + - Only `.ts` files are allowed, including config files; `.js`, `.mjs`, `.cjs`, `.jsx`, and `.tsx` are not. 3. **Concurrency support** - Event-driven, async models only. - Thread-based models are not allowed. -- 2.52.0 From c37251406cd8c21fbfd3233386cb0bc618be083b Mon Sep 17 00:00:00 2001 From: Danny Kim Date: Mon, 12 Oct 2026 21:43:09 +0900 Subject: [PATCH 3/4] Shorten the TypeScript-only rule --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e56467f..4fe0cb7 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Languages are allowed only if they meet **all** of the following criteria: 2. **Type safety** - For Python, type hints with a strict type checker are mandatory. - Use TypeScript instead of JavaScript. - - Only `.ts` files are allowed, including config files; `.js`, `.mjs`, `.cjs`, `.jsx`, and `.tsx` are not. + - Only `.ts` files are allowed, even for configs. 3. **Concurrency support** - Event-driven, async models only. - Thread-based models are not allowed. -- 2.52.0 From 695686dc31099b7a96f1dde82fb2b7c0c92fa857 Mon Sep 17 00:00:00 2001 From: Danny Kim Date: Mon, 12 Oct 2026 21:43:57 +0900 Subject: [PATCH 4/4] Drop Raw TypeScript from approved options --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 4fe0cb7..502a7ff 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,6 @@ Currently approved options are: - [Lit](https://lit.dev) - [Web Awesome](https://webawesome.com) -- [Raw TypeScript](https://www.typescriptlang.org) For new and migrated TypeScript projects, use [Node.js](https://nodejs.org) (24 LTS) with [Vite+](https://viteplus.dev) (`vp`). Vite+ provides linting (Oxlint), formatting (Oxfmt), type checking, testing (Vitest), and bundling (tsdown). -- 2.52.0