CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-wolfy87-eventemitter

Event based JavaScript for the browser with comprehensive event management API

91

1.26x
Overview
Eval results
Files

rubric.jsonevals/scenario-1/

{
  "context": "This evaluation assesses how effectively the engineer uses wolfy87-eventemitter's Context and Chaining capability to build an event-driven task processor. The focus is on proper utilization of method chaining for fluent configuration and accessing the EventEmitter context within listeners to emit follow-up events.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "EventEmitter Integration",
      "description": "TaskProcessor class properly extends or incorporates EventEmitter functionality, making event methods (on, emit, etc.) available on processor instances",
      "max_score": 20
    },
    {
      "name": "Method Chaining Support",
      "description": "Configuration methods (on, addListener, once, etc.) return the EventEmitter/TaskProcessor instance to enable chaining, demonstrated by successful chaining of multiple .on() calls",
      "max_score": 25
    },
    {
      "name": "Context Access via 'this'",
      "description": "Event listeners access the EventEmitter context using 'this' keyword to emit follow-up events, rather than using external references or closures",
      "max_score": 30
    },
    {
      "name": "Event Emission Chain",
      "description": "Implementation correctly uses emit() or emitEvent() methods to trigger events in the sequence: prepare → execute → validate → complete",
      "max_score": 15
    },
    {
      "name": "Fluent Configuration Pattern",
      "description": "The processor supports fluent initialization where multiple event handlers can be registered in a single chained expression (e.g., processor.on('prepare', fn1).on('execute', fn2).on('validate', fn3))",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-wolfy87-eventemitter

tile.json