Install any skill in seconds. Free to start, no credit card required.
Get Started Free →hashintel/fractal-file-structuring
Use when creating, moving, splitting, or organizing TypeScript files and folders. Applies fractal tree file-structuring rules which reduce the cognitive overhead of choosing where to put files and ultimately navigating a codebase (once the structure is established and understood).
Passed 24 of 24 test cases with the skill, and 11 of 24 without it.
and 18 more in the full report
13 fixed11 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 13 test cases the skill fixed. Same model, same prompt, with and without the skill.
A TypeScript file exports a single function named `createUser`. What should the file name be?
| Checked | Without skill | With skill |
|---|---|---|
| The file is named create-user.ts. | Missed | Passed |
| The file name uses kebab-case. | Missed | Passed |
The instructions your model reads when the skill loads.
TypeScript and JavaScript files should be organised in a fractal tree structure. Use this skill when deciding where to create, move, split, or organize files and folders in a TypeScript or JavaScript workspace.
This guidance is based on HASH's file-structuring approach: https://hash.dev/blog/file-structuring
Apply this skill to TypeScript and JavaScript source files, including modules, components, hooks, helpers, types, tests, scripts, and entry points.
Use kebab-case for all TypeScript and JavaScript file and folder names.
create-worker-factory.ts
playback-settings-menu.tsx
button.tsx
Avoid PascalCase, camelCase, and mixed-case file names, even for React components.
Do not add index.ts, index.tsx, index.js, or index.jsx files for folder imports. Prefer explicit file entry points with meaningful names.
If a subtree needs a public entry point, name that file after the concept it exposes (e.g. schema.ts)
A file should expose one or more named exports with a shared semantic purpose. The file name should summarize that purpose (e.g. users.ts)
If a file contains only one main export, prefer naming the file after that export in kebab-case (e.g. create-user.ts)
Avoid default exports unless a framework or external API requires them.
test cases passed, vs 11 / 24 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.