Инструмент для получения данных из API Trello и их локального хранения в виде статических файлов JSON.
С Tresor вы можете использовать Trello в качестве редакционного пользовательского интерфейса и системы управления контентом. Он преобразует список Trello в набор статических файлов JSON, готовых к использованию в качестве API для статического веб-сайта.
Это инструмент для создания вашего следующего проекта JAMstack, позволяющий сделать вашу кодовую базу полностью статической и бессерверной , но также обладающий преимуществами системы управления контентом, поскольку ваш сайт будет автоматически обновляться при изменении контента. Кодовую базу статических файлов можно полностью разместить в CDN, что снижает затраты на инфраструктуру и повышает производительность и доступность.
Trello предлагает очень простой пользовательский интерфейс и хорошо продуманный API со всеми необходимыми функциями для управления содержимым небольшого статического веб-сайта, блога или одностраничного приложения:
Tresor считывает API Trello и сохраняет результаты локально в виде статических файлов JSON в структуре папок, которая позволяет использовать данные в качестве конечных точек HTTP API. Статические файлы можно либо скопировать в папку сборки клиента, либо разместить где-то еще (CDN, страницы Github, Netlify и т. д.), чтобы клиент мог затем использовать данные RESTful-способом.
Настроив непрерывную доставку, можно настроить вебхук для запуска новой сборки при изменении контента, предоставляемого вашим API.
(Пропустите это, используя npx)
Требования:
Бегать:
npm install tresor
Требования:
{"name":"Public","id":"5b193b1a8a23ebb893ab7a02"}
Вы можете передать ключ API, токен API, идентификатор списка и любой другой параметр следующим образом:
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.ключ | Ключ API ( обязательно ) | |
API.токен | Токен API ( обязательно ) | |
API.список | Идентификаторы (в виде массива) списков Trello для просмотра ( обязательно ). | |
dest.root | Папка, в которой сохраняются все файлы JSON. | "static/" |
dest.all | Имя файла JSON, содержащее все записи. | "all.json" |
dest.tags | Имя файла JSON, содержащее все теги. | "tags.json" |
место назначения | Имя папки, в которой сохраняются все отдельные сообщения. | "post" |
dest.tag | Имя папки, в которой сохраняются все отдельные теги. | "tag" |
dest.images | Имя папки, в которой будут храниться все изображения. | false (не загружать изображения) |
поля.поля | Поля сообщения, которые будут отображаться | ["id", "name", "dateLastActivity", "desc", "idList", "labels"] |
поля.члены | Отображать или не отображать информацию о пользователе (правдивая или ложная) | true |
поля.member_fields | Пользовательские поля, которые будут отображаться | ["fullName", "bio"] |
поля.вложения | Отображать или не отображать информацию о вложениях (правдивая или ложная) | true |
поля.attachment_fields | Поля вложений, которые будут отображаться | ["previews", "url"] |
pagination.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
в 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