Repolode
colinhacks

colinhacks/reylo

코드 생성 단계 없이 .sql 파일을 TypeScript로 가져오고, 개발 데이터베이스에서 검증해 완전한 타입 추론을 제공합니다.

스타
1,526
포크
18
열린 이슈
20
마지막 커밋
23시간 전

어떤 프로젝트인가요?

Reylo를 사용하면 .sql 파일의 SQL 쿼리를 TypeScript로 가져와 함수처럼 호출할 수 있습니다. 개발 데이터베이스에서 쿼리를 준비해 SQL 자체로부터 결과 행과 매개변수의 타입을 도출하므로, 행 타입을 직접 작성하거나 동기화할 생성 파일을 관리할 필요가 없습니다.

타입 검사기가 Reylo에 직접 쿼리하기 때문에 잘못 입력한 컬럼명이나 잘못된 매개변수, 삭제된 테이블을 tsc와 에디터에서 타입 오류로 확인할 수 있습니다. Reylo는 null 허용 여부, 쿼리 결과가 한 행인지, 0개 또는 한 행인지, 여러 행인지, 그리고 enum이나 check 제약 조건에서 비롯된 유니온 타입을 추론합니다. Postgres, MySQL, SQLite를 지원하며 pg, postgres.js, mysql2, better-sqlite3, Bun.sql 등의 드라이버와 함께 사용할 수 있습니다. 현재 베타 버전인 TypeScript 7.1 content mappers를 사용합니다.

핵심 기능

  • 01.sql 파일을 타입이 지정된 호출 가능한 쿼리 함수로 가져옵니다.
  • 02개발 데이터베이스에서 SQL을 실행해 행과 매개변수의 타입을 도출합니다.
  • 03SQL 오류를 tsc와 에디터에서 TypeScript 오류로 표시합니다.
  • 04null 허용 여부, 결과 행 수, enum 유니온 타입을 추론합니다.
  • 05Postgres, MySQL, SQLite를 지원하며 원하는 드라이버를 사용할 수 있습니다.

활용 사례

  • 변경되는 데이터베이스 스키마에 맞춰 TypeScript 행 타입을 동기화할 때.
  • ORM 없이 타입 안전성을 유지하면서 세밀하게 직접 작성한 SQL을 사용할 때.
  • 코딩 에이전트가 쿼리를 변경할 때 타입 검사기로 오래된 호출부를 찾아내고 싶을 때.

빠른 시작

  1. 1

    Reylo를 설치하세요

    npm install reylo
  2. 2

    데이터베이스용 엔진(Postgres, MySQL 또는 SQLite)을 설치하세요

    npm install -D @reylosql/postgres
  3. 3

    개발 데이터베이스를 가리키도록 .env에서 DATABASE_URL을 설정하세요

  4. 4

    Node에서 Reylo를 로드해 코드를 실행하세요

    node --env-file=.env --import reylo/register main.ts

사용 전 알아둘 점

  • 현재 베타 버전인 TypeScript 7.1이 필요합니다.
  • Node 24 이상과 실행 중인 개발 데이터베이스가 필요합니다.
  • 타입 검사에는 tsc가 콘텐츠 매퍼를 실행할 수 있도록 --runExternalCode 플래그가 필요합니다.

Repolode 주간에 소개됨

포함된 컬렉션

토픽

자주 묻는 질문

reylo은(는) 무엇인가요?
코드 생성 단계 없이 .sql 파일을 TypeScript로 가져오고, 개발 데이터베이스에서 검증해 완전한 타입 추론을 제공합니다. Reylo를 사용하면 .sql 파일의 SQL 쿼리를 TypeScript로 가져와 함수처럼 호출할 수 있습니다. 개발 데이터베이스에서 쿼리를 준비해 SQL 자체로부터 결과 행과 매개변수의 타입을 도출하므로, 행 타입을 직접 작성하거나 동기화할 생성 파일을 관리할 필요가 없습니다.
reylo은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
reylo은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
reylo은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. reylo의 마지막 커밋은 2026년 11월 6일입니다.
reylo은(는) 어디에 사용할 수 있나요?
변경되는 데이터베이스 스키마에 맞춰 TypeScript 행 타입을 동기화할 때. ORM 없이 타입 안전성을 유지하면서 세밀하게 직접 작성한 SQL을 사용할 때. 코딩 에이전트가 쿼리를 변경할 때 타입 검사기로 오래된 호출부를 찾아내고 싶을 때.
reylo는 어떻게 설치하나요?
Reylo를 설치하세요: npm install reylo 데이터베이스용 엔진(Postgres, MySQL 또는 SQLite)을 설치하세요: npm install -D @reylosql/postgres 개발 데이터베이스를 가리키도록 .env에서 DATABASE_URL을 설정하세요 Node에서 Reylo를 로드해 코드를 실행하세요: node --env-file=.env --import reylo/register main.ts
reylo은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/colinhacks/reylo

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트