Switch TypeScript rules from Deno to Node and Vite+

Co-authored-by: Danny Kim <temeddix@gmail.com>
Co-committed-by: Danny Kim <temeddix@gmail.com>
This commit was merged in pull request #1.
This commit is contained in:
Danny Kim
2026-10-12 12:44:49 +00:00
committed by temeddix
parent a95c769057
commit 93f376f92b
+7 -4
View File
@@ -10,6 +10,7 @@ Languages are allowed only if they meet **all** of the following criteria:
2. **Type safety** 2. **Type safety**
- For Python, type hints with a strict type checker are mandatory. - 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, even for configs.
3. **Concurrency support** 3. **Concurrency support**
- Event-driven, async models only. - Event-driven, async models only.
- Thread-based models are not allowed. - Thread-based models are not allowed.
@@ -34,7 +35,7 @@ For Python, always use `uv`, `ruff`, and `ty` for code quality.
## Frontend ## 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: By using only web components, we achieve:
@@ -55,7 +56,9 @@ This means banned options include, but are not limited to:
Currently approved options are: Currently approved options are:
- Lit - [Lit](https://lit.dev)
- Raw TypeScript - [Web Awesome](https://webawesome.com)
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`.