CtrlK
BlogDocsLog inGet started
Tessl Logo

jpc0/headless-architecture

Use this skill whenever the user discusses application architecture, clean architecture, separating business logic from UI, or cross-platform/WASM-based development. It enforces the 'Headless Core & Passive View' pattern, ensuring that the 'Core' (Business Logic) is platform-agnostic and the 'View' (UI) is a 'Humble Object' that only reflects state.

95

1.13x

Quality

93%

Does it follow best practices?

Impact

99%

1.13x

Average score across 5 eval scenarios

Overview
Skills
Evals
Files

task.mdevals/scenario-1/

Account Registration Feature

Problem/Feature Description

We are building a new application that will eventually run on both web (React) and mobile (React Native). The first feature we need to implement is User Registration.

The registration process requires the user to provide an email and a password. We have some specific rules for security: the password must be at least 8 characters long and must contain at least one digit. If these rules are not met, the user should see appropriate error messages.

Since this feature will be used on multiple platforms, we need to ensure that the core logic is reusable and not tied to any specific UI framework. We want to be able to swap out the React frontend for a mobile native UI later without touching the business rules.

Please design and implement this feature, focusing on the structure of the code to support our cross-platform goals.

Output Specification

The output should include:

  1. The core business logic (structs/classes/functions) that handles user registration and validation.
  2. The interface or bridge that connects the logic to the user interface.
  3. A placeholder or example UI component that shows how it would interact with the logic.
  4. Organize your files into a logical directory structure that separates the business logic from the presentation.

Install with Tessl CLI

npx tessl i jpc0/headless-architecture@0.1.0

evals

scenario-1

rubric.json

task.md

SKILL.md

tile.json