เครื่องมือในการดึงข้อมูลจาก Trello API และจัดเก็บไว้ในเครื่องเป็นไฟล์ JSON แบบคงที่
ด้วย Tresor คุณสามารถใช้ Trello เป็น UI เชิงโต้ตอบและระบบจัดการเนื้อหาได้ โดยจะแปลงรายการ Trello เป็นชุดไฟล์ JSON แบบคงที่ซึ่งพร้อมที่จะทำหน้าที่เป็น API สำหรับเว็บไซต์แบบคงที่
นี่เป็นเครื่องมือในการสร้างโปรเจ็กต์ JAMstack ถัดไปของคุณ ซึ่งช่วยให้โค้ดเบสของคุณเป็น แบบคงที่ และ ไร้เซิร์ฟเวอร์ แต่ยังมีข้อดีของระบบการจัดการเนื้อหาด้วย เนื่องจากไซต์ของคุณจะได้ รับการอัปเดตโดยอัตโนมัติ เมื่อเนื้อหามีการเปลี่ยนแปลง โค้ดเบสไฟล์แบบคงที่สามารถโฮสต์ได้ทั้งหมดบน CDN ซึ่งช่วยลดต้นทุนโครงสร้างพื้นฐานและเพิ่มประสิทธิภาพและความพร้อมใช้งาน
Trello นำเสนอ UI ที่เรียบง่าย มากและ API ที่ออกแบบมาอย่างดี พร้อมด้วยคุณสมบัติที่จำเป็นทั้งหมดในการจัดการเนื้อหาเบื้องหลังเว็บไซต์ขนาดเล็ก บล็อก หรือแอปพลิเคชันหน้าเดียว:
Tresor อ่าน Trello API และบันทึกผลลัพธ์ภายในเครื่องเป็นไฟล์ JSON แบบคงที่ ในโครงสร้างโฟลเดอร์ที่อนุญาตให้ใช้ข้อมูลเป็นจุดสิ้นสุด HTTP API ไฟล์คงที่สามารถคัดลอกในโฟลเดอร์บิลด์ไคลเอนต์หรือโฮสต์ไว้ที่อื่น (CDN, Github Pages, Netlify, ... ) เพื่อให้ไคลเอนต์สามารถใช้ข้อมูลได้อย่างสงบ
การตั้งค่าการจัดส่งแบบต่อเนื่อง จะทำให้สามารถกำหนดค่า Webhook เพื่อทริกเกอร์บิลด์ใหม่ได้เมื่อเนื้อหาที่ให้บริการจาก 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 | URL API พื้นฐาน | "https://api.trello.com/1/" |
api.key | รหัส API ( จำเป็น ) | |
api.โทเค็น | โทเค็น API ( จำเป็น ) | |
api.รายการ | รหัส (เป็นอาร์เรย์) ของรายการ Trello ที่จะรับชม ( จำเป็น ) | |
dest.root | โฟลเดอร์ที่บันทึกไฟล์ JSON ทั้งหมด | "static/" |
ปลายทางทั้งหมด | ชื่อไฟล์ของ JSON ที่มีรายการทั้งหมด | "all.json" |
dest.แท็ก | ชื่อไฟล์ของ JSON ที่มีแท็กทั้งหมด | "tags.json" |
dest.โพสต์ | ชื่อโฟลเดอร์ที่บันทึกโพสต์เดียวทั้งหมด | "post" |
dest.แท็ก | ชื่อโฟลเดอร์ที่บันทึกแท็กเดี่ยวทั้งหมด | "tag" |
dest.images | ชื่อโฟลเดอร์ที่จะจัดเก็บภาพทั้งหมด | false (อย่าดาวน์โหลดภาพ) |
ฟิลด์.ฟิลด์ | ฟิลด์โพสต์ที่จะแสดง | ["id", "name", "dateLastActivity", "desc", "idList", "labels"] |
ฟิลด์สมาชิก | แสดงหรือไม่ข้อมูลผู้ใช้ (จริงหรือเท็จ) | true |
field.member_fields | ฟิลด์ผู้ใช้ที่จะแสดง | ["fullName", "bio"] |
field.ไฟล์แนบ | แสดงหรือไม่แสดงข้อมูลไฟล์แนบ (จริงหรือเท็จ) | true |
field.attachment_fields | ช่องไฟล์แนบที่จะแสดง | ["previews", "url"] |
pagement.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
ดังนั้นคุณไม่จำเป็นต้องติดตั้งโมดูลและเพิ่มลงในการขึ้นต่อกันของแพ็คเกจของคุณ เพียงเพิ่ม npx tresor
ลงใน prebuild
hook ของคุณใน package.json
ของโมดูลของคุณ:
{
[ ... ]
"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