d-kimuson/claude-crew
View CLAUDE.mdAnalysis
Category: Developer Tooling Source: d-kimuson/claude-crew CLAUDE.md: View Original License: MIT License
This CLAUDE.md file from Claude Crew demonstrates exemplary TypeScript development standards with strict typing and comprehensive tooling integration.
Key Features That Make This Exemplary
1. Comprehensive Build System
- Uses pnpm for package management with parallel builds
- Separate schema building step for type generation
- Integrated linting with multiple tools (cspell, prettier, eslint)
- Vitest for modern testing framework
2. Strict TypeScript Standards
- Enforces strict typing with no
anyor non-null assertions - Detailed import ordering rules for consistency
- Prefers
typeoverinterfacefor better type safety - Property-style method signatures for cleaner code
3. Professional Error Handling
- Custom
DiscriminatedErrorfor typed error handling - Centralized error handling with
unhandledError - Strict rules against type assertions
- Clear commenting standards for type overrides
4. Code Quality Automation
- Auto-fixing capabilities with
pnpm fix - Multiple linting layers (spelling, formatting, code quality)
- Comprehensive type checking integration
- Clear testing workflow with single-file testing
Unique Techniques
Strict No-Assertion Policy
Takes a hard stance against type assertions with assertionStyle: "never", forcing developers to write more type-safe code.
Comprehensive Import Ordering
Provides detailed import ordering rules that create consistent, readable code structure across the entire project.
Typed Error Handling
Uses DiscriminatedError for type-safe error handling, moving away from generic Error objects.
Professional Comment Standards
Enforces @ts-expect-error with descriptions while prohibiting @ts-ignore and @ts-nocheck, maintaining code quality.
Key Takeaways
- Enforce Strict Standards: Use tooling to enforce coding standards rather than relying on developer discipline
- Automate Quality: Provide auto-fixing capabilities to reduce friction in maintaining code quality
- Type Safety First: Prioritize type safety over convenience, even when it requires more work
- Comprehensive Tooling: Integrate multiple quality tools (linting, formatting, type checking) into a unified workflow
This approach demonstrates how to create a professional TypeScript development environment with strict standards that are enforced through tooling rather than just documentation.