JSON 데이터를 LLM-friendly 마크다운으로 변환하는 템플릿 기반 도구 모음
이 모노레포는 다음 패키지들을 포함합니다:
JSON 데이터를 LLM-friendly 마크다운으로 변환하는 템플릿 기반 생성기
- 🌐 브라우저와 Node.js 모두 지원
- 📝 Liquid 템플릿 문법 지원
- 🎨 템플릿 조합 기능 (partials, layouts)
- 🚀 TypeScript 완벽 지원
- ⚡ Next.js, React, Vue, NestJS 등 모든 프레임워크 호환
npm install @comneed/textby공유 ESLint 설정 모음
@comneed/eslint-config/library- 라이브러리용@comneed/eslint-config/next- Next.js용@comneed/eslint-config/react-internal- React 내부용
공유 TypeScript 설정 모음
base.json- 기본 설정nextjs.json- Next.js 프로젝트용react-library.json- React 라이브러리용
- Node.js 18 이상
- pnpm 8.15.6 이상
# 의존성 설치
pnpm install
# 모든 패키지 빌드
pnpm build
# 개발 모드로 모든 앱 실행
pnpm devabiy/
├── packages/ # 공유 패키지
│ ├── textby/ # 메인 라이브러리
│ ├── eslint/ # ESLint 설정
│ └── tsconfig/ # TypeScript 설정
│
├── examples/ # 예제 애플리케이션
│ ├── nextjs-app/ # Next.js + TextBy 통합
│ ├── nestjs-app/ # NestJS + TextBy 통합
│ ├── react-app/ # React SPA 예제
│ └── vue-app/ # Vue SPA 예제
│
└── apps/ # 프로덕션 앱 (선택사항)
각 예제는 TextBy를 다양한 환경에서 사용하는 방법을 보여줍니다.
cd examples/nextjs-app
pnpm dev
# http://localhost:3002 접속
# http://localhost:3002/llms.txt 에서 생성된 마크다운 확인주요 기능:
- App Router 사용
- 파일 기반 템플릿
- JSON 데이터 자동 로딩
- 정적 생성 (
force-static)
cd examples/nestjs-app
pnpm dev
# http://localhost:3005 접속
# http://localhost:3005/llms.txt 에서 API 문서 확인주요 기능:
- Controller에서 TextBy 사용
- API 문서 자동 생성
- 파일 기반 템플릿
cd examples/react-app
pnpm dev
# http://localhost:3003 접속주요 기능:
- 브라우저 환경에서 동작
- 인메모리 템플릿
- 템플릿 조합 (partials)
- 실시간 마크다운 생성
cd examples/vue-app
pnpm dev
# http://localhost:3004 접속주요 기능:
- Vue 3 Composition API
- 반응형 마크다운 생성
- 인메모리 템플릿
# 모든 패키지 빌드
pnpm build
# 특정 패키지만 빌드
pnpm build --filter=@comneed/textby# 모든 패키지를 watch 모드로 실행
pnpm dev
# 특정 패키지만 watch
pnpm dev --filter=@comneed/textby# TextBy 테스트 실행
cd packages/textby
pnpm test# 모든 패키지 린트
pnpm lint
# 특정 패키지만 린트
pnpm lint --filter=@comneed/textbypnpm format이 프로젝트는 Changesets를 사용하여 버전 관리와 배포를 수행합니다.
변경사항이 있을 때 changeset을 생성합니다:
pnpm changeset대화형 프롬프트가 나타나면:
- 변경할 패키지 선택 (스페이스바로 선택)
- 버전 타입 선택 (patch/minor/major)
- 변경사항 요약 작성
pnpm version-packages이 명령어는:
- 각 패키지의
package.json버전 업데이트 CHANGELOG.md자동 생성/업데이트- changeset 파일 제거
pnpm release또는 수동으로:
# 빌드
pnpm build --filter=@comneed/textby
# 배포
cd packages/textby
pnpm publish --access public- 빌드 도구: Turborepo
- 패키지 관리자: pnpm
- 버전 관리: Changesets
- 언어: TypeScript
- 번들러: tsup
- 테스트: Vitest
- 이 저장소를 Fork
- Feature 브랜치 생성 (
git checkout -b feature/amazing-feature) - 변경사항 커밋 (
git commit -m 'Add amazing feature') - 브랜치에 Push (
git push origin feature/amazing-feature) - Pull Request 생성
MIT
- llmstxt.org - LLM-friendly 문서 표준
- LiquidJS - 템플릿 엔진
- Turborepo - 모노레포 도구
AI 어시스턴트가 당신의 프로젝트를 이해할 수 있도록 /llms.txt 엔드포인트를 제공하세요.
OpenAPI 스펙이나 JSON 데이터로부터 읽기 쉬운 API 문서를 생성합니다.
개인 정보를 JSON으로 관리하고 마크다운으로 변환하여 다양한 플랫폼에 배포하세요.
변경 로그를 구조화된 데이터로 관리하고 보기 좋은 마크다운으로 생성합니다.
A: 아니요. 브라우저 환경에서는 인라인 템플릿 문자열이나 인메모리 템플릿을 사용해야 합니다.
A: LiquidJS 문법을 지원합니다. 변수, 반복문, 조건문, 필터 등을 사용할 수 있습니다.
A: 네! export const dynamic = 'force-static'을 사용하면 빌드 시에 정적 파일로 생성됩니다.
A: 네! textby.registerFilter()를 사용하여 커스텀 필터를 등록할 수 있습니다.
Made with ❤️ for better LLM integration