Creative Tim UI Blocks
creativetimofficial/ui
Helps install, generate and review Creative Tim UI blocks: shadcn/ui-based React and Tailwind sections that follow a restrained, production-minded design philosophy.
Keep www-sacred's TypeScript fast to type-check and fast to run.
$ npx skills add internet-development/www-sacred --skill fast-typescript-check -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install internet-development/www-sacred fast-typescript-check --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/internet-development/www-sacred.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/fast-typescript-check .claude/skills/fast-typescript-check && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "fast-typescript-check" agent skill from https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-check into .claude/skills/fast-typescript-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fast-typescript-check", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-checkType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add internet-development/www-sacred --skill fast-typescript-check -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install internet-development/www-sacred fast-typescript-check --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-development/www-sacred.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/fast-typescript-check .agents/skills/fast-typescript-check && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "fast-typescript-check" agent skill from https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-check into .agents/skills/fast-typescript-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fast-typescript-check", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add internet-development/www-sacred --skill fast-typescript-check -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install internet-development/www-sacred fast-typescript-check --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-development/www-sacred.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/fast-typescript-check .cursor/skills/fast-typescript-check && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "fast-typescript-check" agent skill from https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-check into .cursor/skills/fast-typescript-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fast-typescript-check", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/internet-development/www-sacred.git --path skills/fast-typescript-check--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add internet-development/www-sacred --skill fast-typescript-check -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install internet-development/www-sacred fast-typescript-check --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-development/www-sacred.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/fast-typescript-check .gemini/skills/fast-typescript-check && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "fast-typescript-check" agent skill from https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-check into .gemini/skills/fast-typescript-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fast-typescript-check", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install internet-development/www-sacred fast-typescript-checkInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add internet-development/www-sacred --skill fast-typescript-check -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/internet-development/www-sacred.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/fast-typescript-check .github/skills/fast-typescript-check && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "fast-typescript-check" agent skill from https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-check into .github/skills/fast-typescript-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fast-typescript-check", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add internet-development/www-sacred --skill fast-typescript-check -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install internet-development/www-sacred fast-typescript-check --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-development/www-sacred.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/fast-typescript-check .opencode/skills/fast-typescript-check && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "fast-typescript-check" agent skill from https://github.com/internet-development/www-sacred/tree/main/skills/fast-typescript-check into .opencode/skills/fast-typescript-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fast-typescript-check", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
fast-typescript-checkKeep www-sacred's TypeScript fast to type-check and fast to run.
Fast Typescript Check is an agent skill from internet-development/www-sacred. Keep www-sacred's TypeScript fast to type-check and fast to run. Use when touching the ASCII/canvas animation components (the only real per-frame code here), tightening type-check wall-clock, or auditing a change for runtime or compiler regressions. Scoped to this repo — a React 19 / Next.js 16 component library plus the zero-dependency Simulacrum CLI framework.
Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Frontend & Design, covering Design systems and React components. It works with TypeScript, Next.js and React. The repository describes itself as: SRCL is an open-source React component and style repository that helps you build web applications, desktop applications, and static websites with terminal aesthetics. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit a288a84. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxtscFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comdevblogs.microsoft.commrale.phv8.devFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Fast Typescript Check loads about 4.3k tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 1,906 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from internet-development/www-sacred at commit a288a84, republished under its MIT licence (© internet-development). 1,906 words, ~4,277 tokens.
.claude/skills/fast-typescript-check/SKILL.md (or your agent's skills folder).A performance discipline for www-sacred. Every rule here is justified against this codebase: either fewer CPU cycles in the components that actually run a render loop, or faster tsc --noEmit. Nothing is cosmetic, and nothing references machinery this repo does not have.
This is not a game engine. There is no THREE.js, no physics, no 60fps simulation of a world. The only per-frame code is the ASCII/canvas animation family, all driven by requestAnimationFrame:
components/ASCIICanvas.tsx — animated ASCII art in a <pre> of per-cell <span> elementscomponents/MatrixLoader.tsx — falling-glyph matrix effectcomponents/CanvasSnake.tsx, components/DOMSnake.tsx, components/CanvasPlatformer.tsx — interactive gamescomponents/examples/OneLineLoaders.tsx, components/BarLoader.tsx, components/BlockLoader.tsx, components/BarProgress.tsx — spinnerscomponents/ASCIICanvas.tsx is the reference implementation. It already follows most of Part 1: a pre-allocated span grid, DOM diffing against previousCharsRef / previousColorsRef, refs cached into locals before the loop, an indexed for, guarded property writes, and an IntersectionObserver that stops the loop when the element scrolls off-screen. When you write or review an animation component, hold it against that file.
Everything else in the repo — the static React components, the Simulacrum CLI framework under scripts/cli/lib/*, the Python mirror — runs once per interaction, not per frame. Part 1 does not apply there; Part 2 (compiler) does.
These match what the repo already does. Follow them; do not invent new ones.
//NOTE(jimmylee): (no space after //, no @) in TS/JS, # NOTE(jimmylee): in Python. Comment the why, never the what. If the code reads clearly, delete the comment. Spell names out — candidateCount, not cnt; previousColors, not pc. A clear name removes the need for a comment.__private prefix. Module-private state is plain const; React-internal state is refs. Don't introduce a naming scheme the rest of the codebase doesn't share.tsx with no build step. Do not import that Node-only code (it uses process.stdout) from React.Find the bottleneck first. For the animation components:
ASCIICanvas / MatrixLoader is on screen for ~5s, stop.animate() callback or the diff loop is the target. If Rendering/Painting dominates, the cost is DOM mutation (too many <span> writes per frame) — tighten the diff, not the math.performance.mark / performance.measure isolate a section without DevTools overhead:
performance.mark('asciiFrameStart');
//NOTE(jimmylee): the per-cell diff loop
performance.mark('asciiFrameEnd');
performance.measure('asciiFrame', 'asciiFrameStart', 'asciiFrameEnd');Remove the marks after profiling — they are diagnostic instrumentation (see 1.9). At 60fps a frame is 16.67ms and the browser needs ~4ms for compositing, leaving ~12ms for JavaScript. A single ASCIICanvas fills a grid of cols * rows cells every frame; if that loop owns most of the budget, the win is in the diff, not the wave math.
Every rule applies to code inside a requestAnimationFrame loop. Outside the animation family, prioritize readability.
ASCIICanvas reads its refs once per frame into locals, then loops:
const cols = colsRef.current;
const grid = gridRef.current;
const previousChars = previousCharsRef.current;
const previousColors = previousColorsRef.current;
for (let index = 0; index < total && index < grid.length; index++) {
// ...reads previousChars[index], writes grid[index]
}ref.current is a property access; inside a loop over hundreds of cells it is a repeated lookup that hoists trivially. Cache anything read more than once in a loop body.
The single biggest cost in a DOM-rendered animation is writing to the DOM. ASCIICanvas only mutates a <span> when its content actually changed:
if (cell.char !== previousChars[index]) {
span.textContent = cell.char;
previousChars[index] = cell.char;
}
if (cell.color !== previousColors[index]) {
span.style.color = cell.color;
previousColors[index] = cell.color;
}An unguarded span.textContent = cell.char every frame forces layout work even when the value is identical. The diff turns a full-grid repaint into only the cells that moved. Never write a DOM property unconditionally in a frame loop.
Use an indexed for. Do not call map / filter / forEach / sort in a frame loop — each takes a fresh closure allocated every frame, which is pure GC pressure. for...of invokes the iterator protocol and deoptimizes in polymorphic call sites; keep it to lifecycle code (build, cleanup, one-shot queries).
//NOTE(jimmylee): allocates a comparator object every frame — avoid in rAF
cells.sort((a, b) => a.depth - b.depth);If a sort is genuinely needed per frame, confirm it can't be hoisted behind a change check first.
ASCIICanvas builds its span grid once in buildGrid(cols) and only rebuilds when the column count changes. Each frame reuses the existing spans and the existing previousChars / previousColors arrays. Allocation inside a frame loop creates GC pressure, and a single GC pause is a visible frame skip. Allocate buffers at setup, index into them each frame.
When the component has nothing to do, skip the frame entirely. ASCIICanvas returns early when off-screen and never schedules the next frame:
const loop = () => {
if (!visibleRef.current || cancelled) return;
// ...
frameRef.current = requestAnimationFrame(loop);
};Pair this with an IntersectionObserver so a loader scrolled out of view costs zero CPU. This is the highest-leverage optimization in the repo: a page with several ASCIICanvas instances would otherwise run every one of them forever.
Math.floor(x) is a call; x | 0 truncates in one instruction. Safe only for positive values inside 32-bit signed range — exactly the case for grid column/row indexing.
const column = index % cols;
const row = (index - column) / cols;ASCIICanvas derives row by exact integer division (the subtraction guarantees divisibility), which avoids Math.floor entirely. Where you do need a floor on a known-positive value, | 0 is the cheaper form.
V8 represents small integers (Smis) differently from boxed doubles. A counter that starts at 0 and later receives a float forces a representation change. In the wave math (Math.sin, Math.cos), values are doubles throughout — keep them that way and keep loop indices integer throughout. Don't mix Math.random() or division results into an integer accumulator inside a hot loop.
Setting style.color or textContent schedules style/layout work even when the value is unchanged (see 1.2). The same applies to any setter with side effects. Guard the write behind a difference check.
performance.now() is fine once per frame (ASCIICanvas reads it for the time base). console.log, JSON.stringify, and extra performance.now() calls for profiling are not — at 60fps they are real cost. Gate them behind a debug flag or remove them after measuring.
as const objects over enums; ES modules over namespacesEnums compile to runtime IIFEs with reverse-mapping tables; namespaces compile to IIFEs that block tree-shaking. as const objects produce zero runtime code and inline cleanly. This repo has no enums and no namespaces today — keep it that way. const enum is doubly wrong here because isolatedModules: true (set in tsconfig.json) cannot inline it across files.
const DIRECTION = { Up: 'UP', Down: 'DOWN', Left: 'LEFT', Right: 'RIGHT' } as const;
type Direction = (typeof DIRECTION)[keyof typeof DIRECTION];These reduce tsc --noEmit wall-clock and editor responsiveness. They apply across the whole repo, not just the animation family.
Inferred return types on exports can balloon into anonymous types with import("./path").Type chains that slow editor responsiveness and incremental rebuilds. A named return type is compact.
//NOTE(jimmylee): compiler infers a wide anonymous type
export function createState() {
return { x: computeX(), y: computeY() };
}
export function createState(): EngineState {
return { x: computeX(), y: computeY() };
}interface extends over & intersections at boundariesInterfaces produce a single cached flat type; intersections re-merge on every use and detect no conflicts. Use interface extends for types that cross module boundaries. Interior types used once don't matter.
Union deduplication is pairwise (quadratic). Past ~12 members, refactor to a base type with a discriminant field instead of a wide A | B | C | ... union.
Deeply nested recursive generics (DeepPartial<T> style) are a common cause of slow checks — each level multiplies instantiations. Keep recursion to ≤3 levels; for known shapes, write the concrete type. This repo has no such generics today; don't add one without measuring.
import type for type-only importsimport type is erased at runtime, shrinking the module graph the bundler walks and heading off circular-import emit problems.
import type { ASCIIAnimationFn } from '@components/ascii/utilities';Note: this repo does not set verbatimModuleSyntax, so the compiler will not force this on you — it is a discipline, not an enforced error. Apply it to type-only imports anyway.
These are the settings actually in tsconfig.json and why they matter. Do not document settings the file doesn't have.
{
"compilerOptions": {
"paths": { "@root/*": ["./*"], "@common/*": ["./common/*"], "@components/*": ["./components/*"], "@modules/*": ["./modules/*"] },
"target": "es2017", // Next.js/SWC does the real downlevel; tsc target only affects lib surface
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true, // kept for compatibility; the Simulacrum framework is now .ts
"skipLibCheck": true, // skips .d.ts checking — the largest single tsc speedup
"strict": false, // only strictNullChecks is on (see below)
"forceConsistentCasingInFileNames": true,
"noEmit": true, // tsc is a checker only; Next.js/SWC emits
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler", // matches the bundler's resolution — correctness, not speed
"resolveJsonModule": true, // lets TypeScript import colors.json as a typed module
"isolatedModules": true, // every file transpiles independently (Next/SWC); blocks const enum
"jsx": "react-jsx",
"incremental": true, // writes tsconfig.tsbuildinfo, skips unchanged files
"plugins": [{ "name": "next" }],
"strictNullChecks": true
},
"exclude": ["node_modules", "**/*.spec.ts"],
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts"]
}Notes that matter when editing this file:
strict is off; only strictNullChecks is enabled. Turning on full strict would be a large, separate diff (many components are loosely typed on purpose — see components/AGENTS.md). Don't flip it as a side effect.paths map lists only the four live aliases: @root/*, @common/*, @components/*, @modules/*. Dead aliases (@system, @demos, @data, @pages) were removed.exclude lists node_modules (not the **/node_modules glob). TypeScript excludes node_modules by default, and once any exclude entry exists you must keep an explicit node_modules entry or the compiler crawls every package — which this file does.verbatimModuleSyntax / types: [] / moduleDetection. The repo is small enough that none of these earn their complexity yet; revisit only if time npx tsc --noEmit climbs past ~30s.Resolved: baseUrl was dropped (modern resolution maps paths from the config file's own location) and target was raised from es5 to es2017. tsc --noEmit exits 0 with no deprecation diagnostics under TypeScript 6.x.
Run before and after any change that touches types broadly.
| Command | What it tells you |
|---|---|
npx tsc --noEmit --extendedDiagnostics | Files, Bind, Check, Emit times. High Check time = type complexity. |
time npx tsc --noEmit | Wall-clock budget check. Should stay well under 30s for this repo. |
npx tsc --noEmit --generateTrace ./trace then npx @typescript/analyze-trace ./trace | Slowest files and most expensive type instantiations. |
npx tsc --explainFiles | grep node_modules | Surfaces packages pulled in that shouldn't be. |
Microsoft is porting tsc to Go (shipping as TypeScript 7.0), with ~10x type-check speedups reported on large codebases. It does not change language semantics — every rule above applies equally to both compilers. The native port makes checking faster; it does not make a quadratic union cheaper to evaluate. Available now as @typescript/native-preview. This repo type-checks in seconds today, so the win here is editor latency, not CI.
In order of authority; higher-ranked sources win on conflict.
A note on moduleResolution: "bundler": blogs sometimes list it as a speed setting. The TS wiki does not — resolution mode affects which files are found, not how fast they check. It is the correct setting here because it matches the bundler, not because it is faster.
Runtime — only for code inside a requestAnimationFrame loop:
textContent, style.*) are guarded by a difference check — diff, don't repaintnew allocations and no closures (map/filter/sort callbacks) inside the loopIntersectionObserverconsole.log / extra performance.now() left in the frame pathCompiler — whole repo:
interface extends, not &import typeenum, no namespace, no const enumnode_modules in exclude and don't silently flip strictNaming:
previousColors, not pc)//NOTE(jimmylee): / # NOTE(jimmylee):, explain why, and aren't restating the code__private prefix introduced — it isn't a convention in this repo© internet-development, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/fast-typescript-check of internet-development/www-sacred.
Open the folder on GitHubat commit a288a84
Fast Typescript Check next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Fast Typescript Check this skillinternet-development/www-sacred | 1.6k | — | ~4.3k | Automated safety check: Pass | MIT | |
| Creative Tim UI Blockscreativetimofficial/ui | 12k | — | ~2.1k | Automated safety check: Notes | MIT | |
| Ss Learnbitjaru/styleseed | 972 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Animated React Component LibrariesHainrixz/editor-pro-max | 261 | 1 repos | ~5.7k | Automated safety check: Pass | Custom licence | |
| Wonder BlocksKhan/wonder-blocks | 163 | — | ~3.2k | Automated safety check: Pass | MIT | |
| Connect Component To Figmadequelabs/cauldron | 129 | — | ~2k | Automated safety check: Pass | MPL-2.0 |
creativetimofficial/ui
Helps install, generate and review Creative Tim UI blocks: shadcn/ui-based React and Tailwind sections that follow a restrained, production-minded design philosophy.
bitjaru/styleseed
Capture a human-approved UI design lesson as a privacy-minimized local StyleSeed candidate, review it, and prepare an opt-in share package without transmitting project code, prompts, screenshots, or…
Hainrixz/editor-pro-max
Helps choose and drop in animated React components from Magic UI and React Bits for landing pages, marketing sites and dashboards, instead of hand-coding animations.
Khan/wonder-blocks
Implements user interfaces using the Wonder Blocks (WB) design system — Khan Academy's React component library.
dequelabs/cauldron
Add a Figma Code Connect (.figma.tsx) file for a Cauldron React component.
HorusGoul/eslint-plugin-react-render-types
Composition patterns for building React components with @renders type annotations from eslint-plugin-react-render-types.
Works with
Categories
Keep www-sacred's TypeScript fast to type-check and fast to run. Fast Typescript Check is an agent skill from internet-development/www-sacred. Keep www-sacred's TypeScript fast to type-check and fast to run.
Fast Typescript Check fits situations like: touching the ASCII/canvas animation components (the only real per-frame code here); tightening type-check wall-clock; auditing a change for runtime; compiler regressions.
Run `npx skills add internet-development/www-sacred --skill fast-typescript-check -a claude-code`. Or copy the skill folder (skills/fast-typescript-check in internet-development/www-sacred) into .claude/skills/fast-typescript-check in your project. Claude Code loads it when a task matches its description.
Run `npx skills add internet-development/www-sacred --skill fast-typescript-check -a codex`. Or copy the skill folder (skills/fast-typescript-check in internet-development/www-sacred) into .agents/skills/fast-typescript-check in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add internet-development/www-sacred --skill fast-typescript-check -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/fast-typescript-check, .gemini/skills/fast-typescript-check, .github/skills/fast-typescript-check and .opencode/skills/fast-typescript-check in your project.
Going by SKILL.md and its folder, Fast Typescript Check needs the command-line tools its instructions call (npx and tsc). Our summary lists: Python 3.
SKILL.md names 4 domains. As links in the text: github.com, devblogs.microsoft.com, mrale.ph and v8.dev. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Fast Typescript Check is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Fast Typescript Check: Creative Tim UI Blocks (creativetimofficial/ui, 12k stars), Ss Learn (bitjaru/styleseed, 972 stars), Animated React Component Libraries (Hainrixz/editor-pro-max, 261 stars) and Wonder Blocks (Khan/wonder-blocks, 163 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
internet-development (a GitHub organization) maintains it in internet-development/www-sacred, which has 1,565 GitHub stars. The repository was last updated on October 7, 2026.
Source: internet-development/www-sacred on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.