You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Keep Node-based tooling simple and explicit when touching the TypeScript track.
11
12
12
13
## Workflow
13
14
@@ -60,6 +61,7 @@ Run language lint checks with:
60
61
-`bash ./scripts/lint.sh` (Bash)
61
62
62
63
These smoke checks also compile standalone C# exercises by generating temporary validation projects during the check.
64
+
TypeScript checks restore Node dependencies from `package-lock.json`, compile with `tsc`, and execute the emitted JavaScript with `node`.
63
65
64
66
The public PowerShell and Bash scripts are thin wrappers over the shared Python automation core in `scripts/automation.py`. Curriculum validation and smoke target metadata live in `scripts/automation_manifest.json`.
65
67
@@ -79,7 +81,7 @@ The public PowerShell and Bash scripts are thin wrappers over the shared Python
79
81
-`## Checkpoint`
80
82
- Every project or assessment checkpoint should include:
81
83
-`README.md`
82
-
- runnable entrypoint (`main.cs` + `.csproj`, `main.go`, or `main.py`)
84
+
- runnable entrypoint (`main.cs` + `.csproj`, `main.go`, `main.py`, or `main.ts`)
83
85
- the same learner goal, input/output shape, and acceptance expectations as the corresponding C++ checkpoint
84
86
- required `## Learning Metadata` before `## Quick Run` with `Difficulty`, `Estimated Time`, `Prerequisites`, and `Learning Focus`
85
87
- Every implemented level README should include required `## Learning Metadata` before `## Module Order` with `Difficulty`, `Estimated Time`, `Prerequisites`, and `Study Strategy`.
@@ -93,6 +95,7 @@ The public PowerShell and Bash scripts are thin wrappers over the shared Python
93
95
- Every exercise file must contain complete, runnable content.
94
96
- Avoid external dependencies and test frameworks for C++ modules.
95
97
- Avoid external dependencies and test frameworks for non-C++ checkpoints.
98
+
- Keep the TypeScript track on plain Node console programs; do not introduce browser, DOM, or framework dependencies.
96
99
- Keep examples aligned with C++17.
97
100
- Keep documentation in English and keep path names consistent with folder names.
98
101
- Keep parity planning updated in `LANGUAGE_PARITY_MATRIX.md` when adding modules or checkpoints to non-C++ tracks.
@@ -95,7 +105,7 @@ A standardized `## Learning Metadata` block is required before `## Quick Run` fo
95
105
Checkpoint artifacts under `languages/<language>/projects/*` and `languages/<language>/assessments/*` should mirror the corresponding C++ checkpoint style:
96
106
97
107
-`README.md`
98
-
- runnable entrypoint (`main.cs` + `.csproj`, `main.go`, or `main.py`)
108
+
- runnable entrypoint (`main.cs` + `.csproj`, `main.go`, `main.py`, or `main.ts`)
99
109
- same learner goal, input/output shape, and acceptance expectations as the C++ version
100
110
101
111
## Example Commenting Standard
@@ -132,11 +142,11 @@ bash ./scripts/build-all.sh
132
142
bash ./scripts/verify-repo.sh
133
143
~~~
134
144
135
-
GitHub Actions validates links, README structure, module completeness, checkpoint completeness, documentation sync, C++ build, multi-language smoke checks, and Linux lint checks for C++, Python, Go, and C#.
145
+
GitHub Actions validates links, README structure, module completeness, checkpoint completeness, documentation sync, compiled-language builds, multi-language smoke checks, and Linux lint checks for C++, Python, Go, C#, and TypeScript.
136
146
137
147
The public PowerShell and Bash scripts remain the supported entrypoints, but they now delegate to a shared Python automation core under `scripts/automation.py` backed by `scripts/automation_manifest.json`.
138
148
139
-
The multi-language smoke scripts also compile standalone C# exercises by generating temporary validation projects during the check.
149
+
The multi-language smoke scripts also compile standalone C# exercises by generating temporary validation projects during the check and compile TypeScript foundations programs before executing their smoke targets.
0 commit comments