Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Take an existing small JavaScript project (or write one) and migrate it to TypeScript with strict mode on: type every function signature, replace any with proper types or unknown + narrowing, fix all strict-mode errors (especially null/undefined access), and configure tsconfig properly. No `any` escape hatches in the final code.
strict: true enabled; tsconfig sane; the project type-checks clean with no suppressed errors.
No any escape hatches; unknown + narrowing used where data is genuinely dynamic; null/undefined handled.
Function signatures and data shapes typed; the types model the domain rather than restating it.
Runtime behavior preserved; the migration didn't break logic.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# Migrate a JavaScript project to strict TypeScript ## Goal Take an existing small JavaScript project (or write one) and migrate it to TypeScript with strict mode on: type every function signature, replace any with proper types or unknown + narrowing, fix all strict-mode errors (especially null/undefined access), and configure tsconfig properly. No `any` escape hatches in the final code. ## Acceptance criteria - [ ] Strict config: strict: true enabled; tsconfig sane; the project type-checks clean with no suppressed errors. - [ ] No any: No any escape hatches; unknown + narrowing used where data is genuinely dynamic; null/undefined handled. - [ ] Type coverage: Function signatures and data shapes typed; the types model the domain rather than restating it. - [ ] Correctness: Runtime behavior preserved; the migration didn't break logic. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.