Опублікуйте модуль Deno за 3 швидкі кроки
Однією з основних особливостей Deno є те, що він не покладається на централізований сервер пакунків, як це зробив Node.js із npm. Будь-хто може опублікувати модуль на власному сервері, і користуватися ним дуже просто завдяки Deno, що розпізнає URL-адреси для модулів. Давайте подивимося, як створити, опублікувати та використовувати наш перший модуль Deno.
Що таке модулі Deno?
Модулі Deno — це частини, які ви можете завантажити та використовувати у своєму проекті, подібно до пакетів Node.js. Вони можуть варіюватися від простої функції до чогось складного, наприклад Oak, проміжного середовища для http-модуля Deno.
Deno надає набір стандартних модулів, як-от модуль http, які перевіряються основною командою Deno. Вони гарантовано працюють разом із певною версією Deno та знаходяться в тому самому сховищі denoland/deno, де можна знайти вихідний код Deno.
Стандартні модулі розміщено на deno.land/std і доступ до них можна отримати через URL-адреси, як і до всіх інших модулів ES, сумісних з Deno.
Але Deno також підтримує сторонні модулі, як-от Oak, які можна імпортувати з будь-якого місця в Інтернеті, як-от GitHub, персональний веб-сервер або CDN, як – от pika.dev або jspm.io.
Щоб полегшити використання сторонніх модулів, Deno надає деякі вбудовані інструменти, такі як deno info
і deno doc
. Крім того, веб-сайт Deno також надає веб-інтерфейс для перегляду документації модуля, доступний за адресою doc.deno.land.
Веб-сайт також надає просту публічну послугу хостингу для Deno-сумісних модулів ES, які можна знайти на deno.land/x.
Написання вашого модуля Deno
Перед публікацією нам потрібно написати наш модуль. Ми збираємося створити послідовність слів, яку можна просто перевернути. Якщо ми введемо «Це весело», воно поверне «fun is This». Дуже просто. Створіть нову папку та файл для свого модуля в ній:
mkdir reverse-words
cd reverse-words
touch mod.ts
Відредагуйте mod.ts
у вашій IDE або редакторі коду на вибір, я використаю VS Code. Вставте в нього це:
Зверніть увагу, що це код TypeScript . Однією з чудових особливостей Deno є те, що він нативно підтримує TypeScript. Оскільки на наступному кроці ми опублікуємо наш модуль Deno на GitHub, ви можете додати простий модуль README.md
із деякою інформацією про нього.
Опублікуйте свій модуль Deno
Останній крок перед публікацією вашого модуля, якщо ви хочете надіслати його до репозиторію Deno, це переконатися, що він відформатований відповідно до стандарту форматування Deno. Для цього ви можете наказати Deno відформатувати ваш код, виконавши:
deno fmt mod.ts
Ми збираємося опублікувати модуль на GitHub і завантажимо його звідти в наш проект Deno. запустити:
git init
git add. git commit -m "Initial commit"
Створіть нове сховище на GitHub і залиште його порожнім. GitHub надасть вам інструкції щодо публікації вашого репо, подібно до
git remote add origin git@github.com:/.git
git push -u origin master
Це опублікує ваш модуль на GitHub. Успіх! Тепер скористаємося ним.
Використовуйте свій модуль Deno
Напишіть новий файл index.ts
і додайте в нього це:
import reverseWords from 'https://raw.githubusercontent.com/startfunction/reverse-words/master/mod.ts';
console.log( reverseWords( 'This is fun') );
Це завантажить модуль, який ви опублікували на попередньому кроці, і використає його, щоб перевернути рядок і зареєструвати його результат. Ми можемо запустити це за допомогою Deno:
deno run index.ts
воно відобразиться
fun is This
Твоя черга
У випадку складних модулів із багатьма залежними модулями, можливо, ви захочете використати збірник Deno, який скомпілює все в один модуль для легшої публікації. Ви опублікували модуль Deno? Дайте нам знати в коментарях! А також прочитайте наші інші статті про Deno, як-от 10 чудових ресурсів, щоб дізнатися та працювати з Deno.