logo hsb.horse

Snippets

스니펫

짧은 코드 조각과 실행 메모를 빠르게 재사용할 수 있게 정리한 목록입니다.

스니펫 태그
  1. Biome npm-scripts 설정

    Biome 도입 시 설정하는 npm-scripts의 정석 패턴. lint와 format을 check 명령어로 실행한다.

  2. 이미지 확장자 정규식

    파일명에서 이미지 형식을 판별하는 JavaScript/TypeScript 정규식 패턴. png, webp, jpg, jpeg, avif, gif 지원.

  3. 지연 초기화 객체

    getter를 사용해 첫 접근 시에만 값을 생성하는 TypeScript 패턴. 메모리 캐시보다 경량인 지연 평가.

  4. man 페이지를 텍스트 파일로 저장

    macOS/Linux에서 man 명령어의 출력을 파일에 저장하는 방법. col -b로 제어 문자를 제거하여 가독성 있는 텍스트를 만든다.

  5. npm에서 tarball 다운로드

    npm pack와 pnpm info를 사용해 npm 패키지의 tarball(.tgz)을 다운로드하는 방법. npm, yarn, pnpm 각각의 방법을 소개.

  6. 시간 기반 시맨틱 버전 생성

    빌드 시각을 버전 번호로 자동 생성하는 TypeScript 함수. Chrome 확장 프로그램 등에서 버전 상한이 있는 경우에 유용함.

  7. SHA256 동기 구현 (WebCrypto API 비의존)

    WebCrypto API를 사용하지 않는 순수 JavaScript SHA256 구현. Web Workers 등에서 crypto 객체를 사용할 수 없는 환경용.

  8. TransformStream으로 텍스트 분할 처리

    ReadableStream과 TransformStream을 사용하여 긴 텍스트를 지정된 크기의 청크로 분할하는 TypeScript 구현 예제.

  9. TypeScript Non-null Assertion

    undefined와 null을 제거하는 TypeScript 타입 가드 함수. 런타임 오류와 타입 안정성을 모두 보장한다.

  10. TypeScript에서 경량 Result 타입 구현

    try-catch를 사용하지 않는 에러 핸들링 패턴. data와 error를 분리한 Result 타입으로 타입 안전하게 에러를 처리한다.

  11. Uint32Array 헬퍼 함수

    `new Uint32Array` 호출을 간결하게 만드는 TypeScript 래퍼 함수입니다. 오버로드를 사용하여 생성자의 모든 인터페이스를 지원합니다.

  12. Uint8Array 헬퍼 함수

    new Uint8Array 호출을 간결하게 만드는 TypeScript 래퍼 함수. 배열, ArrayBuffer, 길이 지정의 모든 패턴을 지원합니다.

  13. Uint8Array 합치기

    여러 개의 Uint8Array를 하나로 병합하는 TypeScript 함수입니다. 바이너리 데이터 결합에 유용합니다.

  14. crypto.randomUUID의 Polyfill

    crypto.randomUUID 함수의 폴리필 구현. 모든 브라우저에서 지원되므로 새로 구현할 필요는 없지만, UUID v4의 작동 원리를 배우기 위한 참고 자료로 유용하다.

  15. CloudFormation 템플릿에서 parameter.json 생성하기

    aws cloudformation validate-template 과 jq 를 조합하여, 환경 변수를 반영한 parameters.json 을 자동 생성하는 스니펫.

  16. CSS href 속성 선택자 사용법

    a 요소의 href 속성에 대해 전방 일치·후방 일치·부분 일치 등의 속성 선택자를 사용하는 CSS 스니펫.

  17. gzip 커맨드 치트시트

    파일 압축·압축 해제·옵션 지정 등, gzip 커맨드의 기본적인 사용법을 정리한 스니펫.

  18. avifenc으로 이미지를 일괄 AVIF로 변환하기

    jpg/jpeg/png 를 재귀적으로 탐색하여 avifenc 으로 .avif 로 변환하는 Bash 스니펫.