GitHub 블록: Markdown 파일의 JavaScript 코드.

Nov 27 2022
또는 GitHub에 배포하는 작은 앱입니다.
최근 GitHub Universe 이벤트에서 조용한 발표 중 하나는 GitHub Blocks였습니다. 이 프로젝트는 개발자가 대기자 명단에 등록할 수 있을 정도로 충분히 발전된 프로젝트이지만 전략 VP Kyle Daigle이 실험으로 제시했습니다. 블록을 사용하면 개발자가 저장소 파일에 JavaScript를 포함하여 라이브 문서가 되어 콘텐츠 시각화 또는 저장소와 관련된 분석 표시와 같은 작업을 수행할 수 있습니다.

최근 GitHub Universe 이벤트에서 조용한 발표 중 하나는 GitHub Blocks였습니다. 이 프로젝트는 개발자가 대기자 명단에 등록할 수 있을 정도로 충분히 발전된 프로젝트이지만 전략 부사장 Kyle Daigle이 실험으로 제시했습니다.

블록을 사용하면 개발자가 저장소 파일에 JavaScript를 포함하여 라이브 문서가 되어 콘텐츠 시각화 또는 저장소와 관련된 분석 표시와 같은 작업을 수행할 수 있습니다. Daigle은 이를 "리포지토리에 직접 대화식으로 참여하는 방법"이라고 설명했습니다.

전략 부사장 Kyle Daigle이 Universe에서 Blocks를 소개합니다.

이 아이디어는 주로 더 풍부한 문서화를 위한 것으로 제시되었습니다. Universe의 Daigle은 "블록은 콘텐츠와 상호 작용하는 방식을 사용자 정의하는 구성 요소입니다. 블록은 WYSIWYG 편집기의 라이브 코드 샌드박스만큼 강력할 수 있습니다."라고 덧붙였습니다. 리포지토리 자체 내에서 리포지토리의 코드가 수행하는 작업. Daigle은 Blocks를 "GitHub에 푸시하여 배포하는 작은 앱"이라고 생각할 수 있습니다.

GitHub 리포지토리용 설명서는 Markdown으로 형식이 지정되는 경우가 가장 많습니다. Markdown은 작성하기 쉽고 일반 텍스트로 읽기 쉬운 마크업을 추가하는 간단한 방법인 동시에 제목, 목록, 이미지 및 코드 예제와 같은 필수 형식을 제공합니다.

Markdown에는 다양한 변형이 있으며 GFM(GitHub Flavored Markdown)이라고 하는 GitHub의 버전이 Markdown의 상위 집합인 여기 에 지정됩니다.

GitHub 블록에서 글꼴 및 색상 렌더링

Markdown에 JavaScript를 추가한다는 개념은 Markdown 개념과 다소 상반되지만 아이디어가 새로운 것은 아닙니다. GitHub 블록은 코더가 R 언어 코드와 Shiny 위젯을 포함할 수 있게 해주는 R Markdown 을 연상시킵니다. Shiny 는 JavaScript, HTML 및 CSS를 실행하는 구성 요소입니다.

Daigle이 제공하는 사용 사례에는 글꼴 및 색상 렌더링, 형식이 지정된 테이블에 JSON 데이터 표시, 기여자, 문제 통계, 커밋 및 풀 요청과 같은 리포지토리 분석 표시, 다이어그램 표시, 애플리케이션 기능 시연이 포함됩니다. 이 마지막 기능은 종종 그렇듯이 자체적으로 JavaScript 또는 TypeScript로 코딩된 애플리케이션에 가장 적합합니다. 또 다른 가능성은 문서 내에서 코드 검색 및 인덱싱을 생성하는 것입니다.

GitHub에는 이미 REST API가 있으며 어떤 의미에서 Blocks는 JavaScript 및 HTML을 GFM에서 렌더링할 수 있도록 하는 아이디어와 함께 이를 결합할 뿐입니다. 개념적으로는 리포지토리가 코드용이고 코드 컴파일 및 실행이 다른 곳에서 발생한다는 개념을 방해하지만, 이 경우 코드는 리포지토리에서 직접 실행되기 때문입니다.

Blocks는 GitHub 전용 기능이며 개발자가 이에 의존하는 경우 다른 코드 리포지토리로 전환하기가 더 어려워집니다. 이는 GitHub에 이점이 될 수 있는 실험의 또 다른 측면입니다. 자세한 정보 및 대기자 명단 신청은 여기 .