clean-typescript

Write clean, efficient TypeScript code that follows common best practices

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "clean-typescript" with this command: npx skills add academind/ai-config/academind-ai-config-clean-typescript

Clean TypeScript

We use TypeScript as a correctness and clarity tool, not as ceremony. Types should reduce bugs and cognitive load.

Type Philosophy

  • PREFER explicit, readable types over clever or overly generic ones
  • AVOID any and unsafe type assertions
  • Use unknown instead of any when necessary
  • Let TypeScript infer types when inference is clear and stable

Types & Interfaces

  • PREFER type aliases for most use cases
  • Use interface primarily for public, extendable object shapes
  • Keep types small, composable, and well-named

Functions & APIs

  • PREFER explicit return types for public functions
  • Avoid function overloads unless they meaningfully improve the API
  • Keep function signatures simple and predictable

Nullability & Safety

  • Handle null and undefined explicitly
  • DO NOT rely on non-null assertions (!) except as a last resort
  • Prefer narrowing via control flow and guards

Enums & Constants

  • AVOID enum
  • PREFER union types or as const objects
  • Keep runtime output predictable and minimal

Error Handling

  • Type errors and error states explicitly
  • Prefer result objects or typed errors over throwing where appropriate
  • Do not hide failure modes behind broad types

General Principles

  • Types should explain intent
  • If a type is hard to understand, it’s probably wrong
  • Favor maintainability over theoretical completeness

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

modern-best-practice-nextjs

No summary provided by upstream source.

Repository SourceNeeds Review
Security

web-security

No summary provided by upstream source.

Repository SourceNeeds Review
General

modern-best-practice-react-components

No summary provided by upstream source.

Repository SourceNeeds Review
General

modern-tailwind

No summary provided by upstream source.

Repository SourceNeeds Review