web-tech-conventions

Applies framework-agnostic ESLint, Prettier, BEM CSS, and vertical-slice conventions to JS/TS web projects.

Updated Aug 20, 2026
One-click install
npx skills add https://github.com/bittlinkm/claude-setup --skill web-tech-conventions-bittlinkm
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: web-tech-conventions
Source: https://github.com/bittlinkm/claude-setup/tree/main/skills/web-tech-conventions
Command: npx skills add https://github.com/bittlinkm/claude-setup --skill web-tech-conventions-bittlinkm

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When setting up or reviewing a JavaScript/TypeScript web project, teams often guess at lint rules, formatting options, CSS naming, and folder structure. This Skill documents the exact framework-agnostic baseline confirmed identical across this org's Angular and Astro projects, so new projects start from the org's real defaults instead of generic tooling presets. ## Core Features & Use Cases - ESLint and Prettier baseline: Documents the shared rule set (typescript-eslint, eslint-plugin-security, import/order, curly) and Prettier options (printWidth 120, single quotes, trailing commas) common to both org projects. - CSS conventions: Defines the shared BEM naming syntax (block__element--modifier) and the design-token-over-hardcoded-values principle, while flagging where per-project mechanisms differ. - Vertical Slice Architecture: Establishes feature-first folder organization as the org default, with shared layers only for genuinely cross-cutting code. - Use Case: When scaffolding a new web frontend in this org, use this Skill to configure ESLint/Prettier from the confirmed baseline, structure the repo as features/<feature>/ slices, and apply BEM naming with CSS custom properties, then layer on the framework-specific skill. ## Quick Start Ask the AI to set up a new TypeScript web project following the org's shared web-tech conventions baseline, layered with the appropriate framework-specific skill.

Frequently Asked Questions about web-tech-conventions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up ESLint and Prettier for a new TypeScript web project?

Start from this baseline: extend eslint.configs.recommended, tseslint recommended plus stylistic, and eslint-plugin-security, with overrides like no-console warn and explicit-function-return-type warn. Prettier uses printWidth 120, 2-space indent, single quotes, semicolons, and trailing commas.

What is vertical slice architecture in frontend projects?

Vertical slice architecture organizes code by feature rather than technical layer, so each features/<feature>/ folder colocates its UI, state, data access, and models. Code moves into a shared layer only when genuinely reused by two or more features.

Should I use this skill alone or with framework-specific conventions?

Always layer it with the framework-specific skill such as angular-webapp-conventions or astro-webapp-conventions. This skill covers only the framework-agnostic baseline; component, template, routing rules, and actual design-token names live in the framework skill.

Does this baseline include the actual CSS design token names?

No, it documents only the principle of using CSS custom properties instead of hardcoded values. Token names differ per project: Angular uses --mat-sys-* from Material theming, while Astro uses hand-rolled --color-* and --space-* tokens documented in the framework skill.

What if a project's actual config disagrees with this baseline?

Trust the project's real files over this skill. The baseline documents what was confirmed identical across two specific org projects, not an immutable policy, so project-level ESLint, Prettier, or CSS configuration takes precedence.