Trello API 에서 데이터를 가져와 정적 JSON 파일로 로컬에 저장하는 도구입니다.
Tresor를 사용하면 Trello를 편집 UI 및 콘텐츠 관리 시스템으로 사용할 수 있습니다. Trello 목록을 정적 웹사이트용 API로 제공할 준비가 된 정적 JSON 파일 세트로 변환합니다.
이는 다음 JAMStack 프로젝트를 구축하기 위한 도구로, 코드베이스를 완전히 정적이고 서버리스로 만들 수 있을 뿐만 아니라 콘텐츠가 변경되면 사이트가 자동으로 업데이트 되므로 콘텐츠 관리 시스템의 장점도 있습니다. 정적 파일 코드베이스는 CDN에서 완전히 호스팅될 수 있으므로 인프라 비용을 줄이고 성능과 가용성을 높일 수 있습니다.
Trello는 작은 정적 웹 사이트, 블로그 또는 단일 페이지 애플리케이션 뒤에 있는 콘텐츠를 관리하는 데 필요한 모든 기능을 갖춘 매우 간단한 UI와 잘 설계된 API를 제공합니다.
Tresor는 Trello API를 읽고 결과를 HTTP API 엔드포인트로 데이터를 사용할 수 있는 폴더 구조에 정적 JSON 파일로 로컬로 저장합니다. 정적 파일은 클라이언트 빌드 폴더에 복사되거나 다른 위치(CDN, Github 페이지, Netlify 등)에 호스팅될 수 있으므로 클라이언트는 RESTful 방식으로 데이터를 사용할 수 있습니다.
지속적인 전달을 설정하면 API에서 제공되는 콘텐츠가 변경될 때 새 빌드를 트리거하도록 웹후크를 구성할 수 있습니다.
(npx를 사용하여 건너뛰기)
요구사항:
달리다:
npm install tresor요구사항:
{"name":"Public","id":"5b193b1a8a23ebb893ab7a02"}API 키, API 토큰, 목록 ID 및 기타 옵션을 다음과 같이 전달할 수 있습니다.
config.json 파일의 속성다음 명령을 실행하여 JSON 파일을 다운로드합니다 .
tresor구성 옵션을 환경 변수로 전달:
API__KEY=asenoiuwqeWNEUfnewoeFNWQetr3295023rer API__TOKEN=ASnqoiwqenmNEWOIWNrffnklef3io2r032rnewfoid3T439543 API__LIST=124f9hue2983232rj32052s tresor또는 명령줄 인수로:
tresor --api.key=asenoiuwqeWNEUfnewoeFNWQetr3295023rer --api.token=ASnqoiwqenmNEWOIWNrffnklef3io2r032rnewfoid3T439543 --api.list=124f9hue2983232rj32052s config.json 파일에 추가하거나 명령줄/환경 변수를 통해 전달할 수 있는 옵션은 다음과 같습니다.
| 이름 | 설명 | 기본 |
|---|---|---|
| api.url | 기본 API URL | "https://api.trello.com/1/" |
| api.key | API 키( 필수 ) | |
| api.token | API 토큰( 필수 ) | |
| api.list | 감시할 trello 목록의 ID(배열)( 필수 ) | |
| 대상 루트 | 모든 JSON 파일이 저장되는 폴더 | "static/" |
| 최종 목적지 | 모든 항목을 포함하는 JSON의 파일 이름 | "all.json" |
| 목적지 태그 | 모든 태그를 포함하는 JSON의 파일 이름 | "tags.json" |
| 목적지.우편물 | 모든 단일 게시물이 저장되는 폴더 이름 | "post" |
| 목적지 태그 | 모든 단일 태그가 저장되는 폴더 이름 | "tag" |
| 목적지 이미지 | 모든 이미지가 저장될 폴더 이름 | false (이미지를 다운로드하지 않음) |
| 필드.필드 | 표시될 게시물 필드 | ["id", "name", "dateLastActivity", "desc", "idList", "labels"] |
| 필드.멤버 | 사용자 정보 표시 여부(true 또는 false) | true |
| fields.member_fields | 표시할 사용자 필드 | ["fullName", "bio"] |
| 필드.첨부 파일 | 첨부 파일 정보 표시 여부(true 또는 false) | true |
| fields.attachment_fields | 표시할 첨부 필드 | ["previews", "url"] |
| 페이지 매김.entriesPerPage | 단일 JSON의 항목 수 | 20 |
기본 config.json 파일은 다음과 같습니다.
{
"api" : {
"url" : " https://api.trello.com/1/ "
},
"dest" : {
"root" : " static " ,
"all" : " pages " ,
"tags" : " tags " ,
"tagList" : " tags.json " ,
"post" : " post " ,
"tag" : " tag " ,
"images" : false
},
"fields" : {
"fields" : [ " id " , " name " , " dateLastActivity " , " desc " , " idList " , " labels " ],
"members" : true ,
"member_fields" : [ " fullName " , " bio " ],
"attachments" : true ,
"attachment_fields" : [ " previews " , " url " ]
},
"pagination" : {
"entriesPerPage" : 20
}
}선택할 수 있는 필드에 대한 추가 정보를 얻으려면 카드, 첨부 파일 및 사용자 문서를 참조하십시오.
이 모듈은 npx 와 함께 사용하기에 적합하므로 모듈을 설치하고 패키지 종속성에 추가할 필요가 없습니다. 모듈의 package.json 에 있는 prebuild 후크에 npx tresor 추가하기만 하면 됩니다.
{
[ ... ]
"scripts" : {
"prebuild" : " npx tresor " ,
[ ... ]
}
}완료!
tresor --help 실행하면 다음 사용 설명서가 인쇄됩니다.
$ tresor --help
A tool to fetch remote API data and store them locally as static JSON files
Usage
$ tresor
Run tresor
$ tresor --help
Print this help message
$ tresor --version
Print the current version
Examples
$ tresor --api.key=XXX --api.token=XXX --api.list=XXX
Run the script to request the remote JSON files and save
them locally.
You can alternatively pass the configuration options as
environment variables or writing them to config.json.
See the online documentation for further information