CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-babel--preset-stage-0

Deprecated Babel preset for stage 0 plugins that provides migration guidelines to explicit plugin configurations

80

1.21x
Overview
Eval results
Files

rubric.jsonevals/scenario-3/

{
  "context": "Evaluates how well the solution uses @babel/core with @babel/preset-env to produce separate legacy and modern bundles, inject only needed polyfills, and expose target-aware metadata for preset tuning. Verifies that preset-env options (targets, modules, useBuiltIns/corejs) are applied deliberately instead of relying on default transpilation.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Target config",
      "description": "Configures @babel/preset-env with distinct legacy and modern targets in separate @babel/core transform/transformAsync calls rather than a single shared preset instance.",
      "max_score": 20
    },
    {
      "name": "Module modes",
      "description": "Sets preset-env module handling so the modern build keeps ES modules (modules: false) while the legacy build rewrites modules (e.g., modules: \"auto\"/\"commonjs\") to ensure downlevel output.",
      "max_score": 20
    },
    {
      "name": "Syntax coverage",
      "description": "Relies on preset-env to downlevel modern syntax (e.g., optional chaining/nullish coalescing) for the legacy targets without applying those transforms to the modern target set (via include/exclude or separate preset config).",
      "max_score": 20
    },
    {
      "name": "Usage polyfills",
      "description": "Enables useBuiltIns: \"usage\" with corejs: 3 in preset-env so only the missing built-ins (e.g., Promise.finally, Array.from) are injected for the legacy build, while avoiding polyfill imports in the modern build when targets support them.",
      "max_score": 25
    },
    {
      "name": "Metadata capture",
      "description": "Extracts targets and injected polyfills from Babel output (e.g., preset-env debug/metadata or transform result metadata) to populate the returned metadata fields instead of hardcoding values.",
      "max_score": 15
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-babel--preset-stage-0

tile.json