Skip to content

chore: Improve Claude setup#66

Merged
Patrick Lafrance (patricklafrance) merged 1 commit into
mainfrom
654645645
Mar 2, 2026
Merged

chore: Improve Claude setup#66
Patrick Lafrance (patricklafrance) merged 1 commit into
mainfrom
654645645

Conversation

@patricklafrance
Copy link
Copy Markdown
Member

  • Created a new markdown file at .claude/skills/vitest/references/features-snapshots.md detailing snapshot testing with Vitest.
  • Included examples for basic snapshots, inline snapshots, file snapshots, and error snapshots.
  • Documented how to update snapshots and customize serializers.
  • Added sections on snapshot format options and concurrent test snapshots.
  • Emphasized key points for effective snapshot testing.

feat(workleap-web-configs): introduce shared web configuration documentation

  • Added a new markdown file at .claude/skills/workleap-web-configs/SKILL.md to describe Workleap's shared web configuration packages.
  • Outlined the purpose and usage of various configuration packages including ESLint, TypeScript, Rsbuild, Rslib, Stylelint, and Browserslist.
  • Provided a philosophy section emphasizing no lock-in, project type configurations, and ESM/ESNext support.
  • Included a quick reference table for selecting configurations based on project type.

feat(workleap-web-configs): add ESLint configuration reference

  • Created a new markdown file at .claude/skills/workleap-web-configs/references/eslint.md detailing ESLint configurations.
  • Documented available configurations, installation instructions, and configuration examples for web applications, React libraries, and TypeScript libraries.
  • Included customization options for disabling rules, changing rule severity, and adding plugins.
  • Provided CLI scripts for linting in both polyrepo and Turborepo setups.

feat(workleap-web-configs): add Rsbuild configuration reference

  • Added a new markdown file at .claude/skills/workleap-web-configs/references/rsbuild.md to document Rsbuild configurations.
  • Explained installation, setup requirements, and development/build configurations.
  • Included predefined options for development and build setups, along with examples.
  • Documented Storybook configuration and CLI scripts for development and build processes.

feat(workleap-web-configs): add Rslib configuration reference

  • Created a new markdown file at .claude/skills/workleap-web-configs/references/rslib.md detailing Rslib configurations for library projects.
  • Documented installation, build, and development configurations with examples.
  • Included Storybook configuration and CLI scripts for development and build processes.
  • Explained the difference between bundleless and bundled outputs.

feat(workleap-web-configs): add Stylelint configuration reference

  • Added a new markdown file at .claude/skills/workleap-web-configs/references/stylelint.md to document Stylelint configurations.
  • Provided installation instructions, configuration examples, and customization options.
  • Included CLI scripts for linting in both polyrepo and Turborepo setups.
  • Documented EditorConfig and VS Code integration for consistent styling.

feat(workleap-web-configs): add TypeScript configuration reference

  • Created a new markdown file at .claude/skills/workleap-web-configs/references/typescript.md detailing TypeScript configurations.
  • Documented available configurations, installation instructions, and configuration examples for web applications, libraries, and monorepo workspaces.
  • Included customization options for overriding compiler options and path mappings.
  • Provided CLI scripts for type checking in both polyrepo and Turborepo setups.

- Created a new markdown file at `.claude/skills/vitest/references/features-snapshots.md` detailing snapshot testing with Vitest.
- Included examples for basic snapshots, inline snapshots, file snapshots, and error snapshots.
- Documented how to update snapshots and customize serializers.
- Added sections on snapshot format options and concurrent test snapshots.
- Emphasized key points for effective snapshot testing.

feat(workleap-web-configs): introduce shared web configuration documentation

- Added a new markdown file at `.claude/skills/workleap-web-configs/SKILL.md` to describe Workleap's shared web configuration packages.
- Outlined the purpose and usage of various configuration packages including ESLint, TypeScript, Rsbuild, Rslib, Stylelint, and Browserslist.
- Provided a philosophy section emphasizing no lock-in, project type configurations, and ESM/ESNext support.
- Included a quick reference table for selecting configurations based on project type.

feat(workleap-web-configs): add ESLint configuration reference

- Created a new markdown file at `.claude/skills/workleap-web-configs/references/eslint.md` detailing ESLint configurations.
- Documented available configurations, installation instructions, and configuration examples for web applications, React libraries, and TypeScript libraries.
- Included customization options for disabling rules, changing rule severity, and adding plugins.
- Provided CLI scripts for linting in both polyrepo and Turborepo setups.

feat(workleap-web-configs): add Rsbuild configuration reference

- Added a new markdown file at `.claude/skills/workleap-web-configs/references/rsbuild.md` to document Rsbuild configurations.
- Explained installation, setup requirements, and development/build configurations.
- Included predefined options for development and build setups, along with examples.
- Documented Storybook configuration and CLI scripts for development and build processes.

feat(workleap-web-configs): add Rslib configuration reference

- Created a new markdown file at `.claude/skills/workleap-web-configs/references/rslib.md` detailing Rslib configurations for library projects.
- Documented installation, build, and development configurations with examples.
- Included Storybook configuration and CLI scripts for development and build processes.
- Explained the difference between bundleless and bundled outputs.

feat(workleap-web-configs): add Stylelint configuration reference

- Added a new markdown file at `.claude/skills/workleap-web-configs/references/stylelint.md` to document Stylelint configurations.
- Provided installation instructions, configuration examples, and customization options.
- Included CLI scripts for linting in both polyrepo and Turborepo setups.
- Documented EditorConfig and VS Code integration for consistent styling.

feat(workleap-web-configs): add TypeScript configuration reference

- Created a new markdown file at `.claude/skills/workleap-web-configs/references/typescript.md` detailing TypeScript configurations.
- Documented available configurations, installation instructions, and configuration examples for web applications, libraries, and monorepo workspaces.
- Included customization options for overriding compiler options and path mappings.
- Provided CLI scripts for type checking in both polyrepo and Turborepo setups.
Copilot AI review requested due to automatic review settings March 2, 2026 17:12
@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented Mar 2, 2026

Open in StackBlitz

pnpm add https://pkg.pr.new/workleap/wl-logging/@workleap/logging@66

commit: dba203e

@patricklafrance Patrick Lafrance (patricklafrance) merged commit 02662ff into main Mar 2, 2026
9 of 10 checks passed
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands the repository’s Claude “skills” documentation by adding detailed reference guides for Vitest usage and for Workleap’s shared web tooling configuration packages, plus a small normalization update to the skills lock file.

Changes:

  • Added a new workleap-web-configs skill with references for ESLint, TypeScript, Rsbuild, Rslib, and Stylelint shared configs.
  • Added/updated the vitest skill with a set of reference pages (CLI/config/assertions/hooks/mocking/snapshots/coverage/concurrency/projects/environments/type-testing).
  • Reformatted skills-lock.json for consistent JSON formatting.

Reviewed changes

Copilot reviewed 24 out of 25 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
skills-lock.json JSON formatting normalization for the skills lock file.
.claude/skills/workleap-web-configs/SKILL.md Introduces the workleap-web-configs skill overview, philosophy, and reference index.
.claude/skills/workleap-web-configs/references/eslint.md Documents @workleap/eslint-configs install/setup/customization patterns.
.claude/skills/workleap-web-configs/references/rsbuild.md Documents @workleap/rsbuild-configs dev/build/Storybook configuration and usage.
.claude/skills/workleap-web-configs/references/rslib.md Documents @workleap/rslib-configs build/dev/Storybook configuration and outputs.
.claude/skills/workleap-web-configs/references/stylelint.md Documents @workleap/stylelint-configs setup, customization, and editor integration.
.claude/skills/workleap-web-configs/references/typescript.md Documents @workleap/typescript-configs configurations and recommended scripts.
.claude/skills/vitest/SKILL.md Adds the Vitest skill index, versioning, and reference map.
.claude/skills/vitest/GENERATION.md Captures provenance (source SHA/date) for the generated Vitest skill.
.claude/skills/vitest/references/features-snapshots.md Adds a snapshot testing reference (file/inline/error/concurrency/formatting).
.claude/skills/vitest/references/features-mocking.md Adds a mocking reference (vi.fn/spyOn/module mocking/timers/env/globals).
.claude/skills/vitest/references/features-filtering.md Adds a reference for filtering tests (CLI patterns, changed/related, tags).
.claude/skills/vitest/references/features-coverage.md Adds a reference for coverage configuration/providers/reporters/thresholds/CI.
.claude/skills/vitest/references/features-context.md Adds a reference for test context and fixtures via test.extend.
.claude/skills/vitest/references/features-concurrency.md Adds a reference for parallelism/concurrency/sharding/sequence controls.
.claude/skills/vitest/references/core-test-api.md Documents the core test/it API, modifiers, parameterized tests, retries.
.claude/skills/vitest/references/core-hooks.md Documents lifecycle hooks and around hooks, including concurrency notes.
.claude/skills/vitest/references/core-expect.md Documents the expect API, matchers, async assertions, snapshots.
.claude/skills/vitest/references/core-describe.md Documents describe/suite API, modifiers, parameterized suites, hooks.
.claude/skills/vitest/references/core-config.md Documents Vitest configuration patterns and common options.
.claude/skills/vitest/references/core-cli.md Documents Vitest CLI commands/options and common workflows.
.claude/skills/vitest/references/advanced-vi.md Documents advanced vi utilities (hoisting, timers, waitFor, config).
.claude/skills/vitest/references/advanced-type-testing.md Documents type-testing with expectTypeOf/assertType and config.
.claude/skills/vitest/references/advanced-projects.md Documents multi-project setups and monorepo patterns.
.claude/skills/vitest/references/advanced-environments.md Documents environments (node/jsdom/happy-dom/custom) and browser mode.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +105 to +111
{
"extends": ["@workleap/typescript-configs/web-application.json"],
"compilerOptions": {
"strict": false
},
"exclude": ["dist", "node_modules"]
}
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The customization snippet again uses an array for extends. tsconfig.json only supports a single string for extends, so this example won’t work as written.

Copilot uses AI. Check for mistakes.
Comment on lines +190 to +194
```json
{
"typecheck": "tsgo"
}
```
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same issue in the Turborepo project snippet: it uses "typecheck": "tsgo", but the repo uses tsc for typechecking. Please align the documentation with the real script/CLI to avoid broken copy/paste.

Copilot uses AI. Check for mistakes.
Comment on lines +53 to +57
{
"extends": ["@workleap/typescript-configs/web-application.json"],
"include": ["**/*", ".storybook/*"],
"exclude": ["dist", "node_modules"]
}
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Storybook variant snippet also uses an array for extends, but tsconfig.json requires extends to be a string. Please fix this snippet so it’s valid when copied into a project.

Copilot uses AI. Check for mistakes.
Comment on lines +119 to +126
{
"extends": ["@workleap/typescript-configs/web-application.json"],
"compilerOptions": {
"moduleResolution": "Bundler",
"module": "ESNext"
},
"exclude": ["dist", "node_modules"]
}
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the "Non-ESM Projects (Migration)" example, extends is still shown as an array. TypeScript expects a single string value for extends, so this snippet won’t parse as a valid tsconfig.

Copilot uses AI. Check for mistakes.
Comment on lines +43 to +47
// tsconfig.json
{
"extends": ["@workleap/typescript-configs/web-application.json"],
"exclude": ["dist", "node_modules"]
}
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the tsconfig example, extends is shown as an array, but TypeScript expects extends to be a single string path. Using an array here will make the snippet invalid for tsc/editors; update the example to use a string value.

Copilot uses AI. Check for mistakes.
Comment on lines +151 to +165
```json
{
"extends": "@workleap/typescript-configs/react",
"compilerOptions": { /* custom options */ },
"exclude": ["dist", "node_modules"]
}
```

For non-React projects:

```json
{
"extends": "@workleap/typescript-configs/core",
"compilerOptions": { /* custom options */ },
"exclude": ["dist", "node_modules"]
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In "Advanced: Custom Composition", the doc uses @workleap/typescript-configs/react and /core, but earlier it lists the advanced pieces as react.json and core.json. Please make these references consistent (and ensure the path includes the correct filename/extension) so consumers can resolve them reliably.

Copilot uses AI. Check for mistakes.
Comment on lines +181 to +186
```json
{
"lint": "turbo run lint --continue",
"typecheck": "tsgo"
}
```
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Turborepo workspace scripts show "typecheck": "tsgo", but this repo’s root package.json uses tsc for typecheck. Unless tsgo is a real, required binary in this ecosystem, update these examples to match the actual command (tsc) so readers don’t copy a non-existent script.

Copilot uses AI. Check for mistakes.
@@ -0,0 +1,207 @@
---
name: snapshot-testing
description: Snapshot testing with file, inline, and file snapshots
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Frontmatter description says "Snapshot testing with file, inline, and file snapshots" (duplicate “file”). Update the description to accurately list the snapshot types covered (e.g., inline + file + error snapshots).

Suggested change
description: Snapshot testing with file, inline, and file snapshots
description: Snapshot testing with file, inline, and error snapshots

Copilot uses AI. Check for mistakes.
Comment on lines +63 to +67
// tsconfig.json
{
"extends": ["@workleap/typescript-configs/library.json"],
"exclude": ["dist", "node_modules"]
}
Copy link

Copilot AI Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This library tsconfig example also uses an array for extends, but extends must be a string in tsconfig.json. Please adjust this snippet (and keep it consistent across the doc) so it’s copy/paste valid.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants