Skip to content

vivshaw/loam-code

v1.0.0CC-BY-SA-4.0

Portable coding standards and language-specific patterns for coding agents

coding-effectively

Use when writing or refactoring code. Includes context-dependent sub-skills to empower different coding styles across languages and runtimes.

defense-in-depth

Use when invalid data causes failures deep in execution - validates at every layer data passes through to make bugs structurally impossible rather than temporarily fixed

howto-code-in-go

Use when writing, reviewing, or modifying Go code - covers naming, error handling and wrapping, doc comments, declarations and scope, API and interface design, concurrency and goroutine lifetimes, and table-driven testing

howto-code-in-python

Use when writing, reviewing, or modifying Python code - covers the Ruff/Mypy/uv toolchain, naming, type annotations, idioms and comprehensions, errors and exceptions, dataclasses, imports and module layout, async, and pytest

howto-code-in-rust

Use when writing, reviewing, or modifying Rust code - covers error handling with thiserror+miette, type system patterns, async and serde conventions, testing crates, dependency pinning, and module organization

howto-code-in-typescript

Use when writing TypeScript code, reviewing TS implementations, or making decisions about type declarations, function styles, or naming conventions - comprehensive house style covering type vs interface rules, function declarations, immutability patterns, type safety enforcement, and the static analysis toolchain (tsconfig, Oxlint, Oxfmt, knip, dpdm)

howto-develop-with-postgres

Use when writing database access code, creating schemas, or managing transactions with PostgreSQL - enforces transaction safety with TX_ naming, read-write separation, type safety for UUIDs/JSONB, and snake_case conventions to prevent data corruption and type errors

programming-in-react

Use when writing or modifying React components, planning React features, or working with .jsx/.tsx files - provides modern React patterns with TypeScript, hooks usage, component composition, and common pitfalls to avoid

property-based-testing

Use when writing tests for serialization, validation, normalization, or pure functions - provides property catalog, pattern detection, and library reference for property-based testing

writing-comments

Use every time you write or edit code comments, or perform code review

writing-git-commits

Use when committing changes, splitting work into commits, or writing commit messages - covers atomic commits, bisect-able history, separating concerns, and message style

writing-good-tests

Use when writing or reviewing tests - covers test philosophy, condition-based waiting, mocking strategy, and test isolation