{"id":232013,"date":"2023-01-12T13:53:00","date_gmt":"2023-01-12T10:53:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232013"},"modified":"2023-01-12T13:54:03","modified_gmt":"2023-01-12T10:54:03","slug":"jak-pravilno-stvoriti-ta-opublikuvati-instrument-deno-cli","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/uk\/jak-pravilno-stvoriti-ta-opublikuvati-instrument-deno-cli\/","title":{"rendered":"\u042f\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u0442\u0430 \u043e\u043f\u0443\u0431\u043b\u0456\u043a\u0443\u0432\u0430\u0442\u0438 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI"},"content":{"rendered":"\n<p>\u041e\u0434\u043d\u0430 \u0446\u0456\u043a\u0430\u0432\u0430 \u043e\u0441\u043e\u0431\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0443 Ember \u043f\u043e\u043b\u044f\u0433\u0430\u0454 \u0432 \u0442\u043e\u043c\u0443, \u0449\u043e \u0432\u0456\u043d \u043c\u0430\u0454 Ember CLI \u0434\u043b\u044f \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, \u0448\u0430\u0431\u043b\u043e\u043d\u0443 \u0430\u0431\u043e \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0443. \u0426\u0435 \u0437\u043d\u0430\u0447\u043d\u043e \u0435\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c \u0447\u0430\u0441, \u0456 \u043d\u0430\u0432\u0456\u0442\u044c \u0431\u0456\u043b\u044c\u0448\u0435, <code>ember generate component<\/code>\u0433\u0435\u043d\u0435\u0440\u0443\u0454 \u043d\u0435 \u043b\u0438\u0448\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442, \u0430\u043b\u0435 \u0439 \u0442\u0435\u0441\u0442\u043e\u0432\u0438\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f QUnit. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0434\u0438\u0432\u0438\u043c\u043e\u0441\u044f, \u044f\u043a \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI, \u0449\u043e\u0431 \u0437\u0440\u043e\u0431\u0438\u0442\u0438 \u0449\u043e\u0441\u044c \u043f\u043e\u0434\u0456\u0431\u043d\u0435 \u0434\u043b\u044f React.<\/p>\n<p>\u0423 \u0446\u044c\u043e\u043c\u0443 \u043f\u043e\u0441\u0456\u0431\u043d\u0438\u043a\u0443 Deno \u043c\u0438 \u043f\u043e\u0431\u0430\u0447\u0438\u043c\u043e, \u044f\u043a \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e TypeScript, \u044f\u043a \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0438\u0442\u0438 \u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456 \u0437\u0456 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0457 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438 Deno. \u041c\u0438 \u0440\u043e\u0437\u0433\u043b\u044f\u043d\u0435\u043c\u043e, \u044f\u043a \u0447\u0438\u0442\u0430\u0442\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0456 \u043f\u0438\u0441\u0430\u0442\u0438 \u0444\u0430\u0439\u043b. \u041d\u0430\u0440\u0435\u0448\u0442\u0456, \u043c\u0438 \u043d\u0430\u0432\u0447\u0438\u043c\u043e\u0441\u044f \u043f\u0443\u0431\u043b\u0456\u043a\u0443\u0432\u0430\u0442\u0438 \u043d\u0430\u0448 \u043c\u043e\u0434\u0443\u043b\u044c Deno \u043d\u0430 GitHub \u0456 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u0438 \u0439\u043e\u0433\u043e \u0431\u0435\u0437\u043f\u043e\u0441\u0435\u0440\u0435\u0434\u043d\u044c\u043e \u0437 \u0446\u044c\u043e\u0433\u043e \u043c\u0456\u0441\u0446\u044f, \u0430 \u0442\u0430\u043a\u043e\u0436 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u044e\u0432\u0430\u0442\u0438 \u0439\u043e\u0433\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e, \u0449\u043e\u0431 \u0432\u0456\u043d \u043c\u0456\u0433 \u043f\u0440\u0430\u0446\u044e\u0432\u0430\u0442\u0438 \u0431\u0435\u0437 \u043f\u0456\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044f.<\/p>\n<h2>\u041e\u0433\u043b\u044f\u0434<\/h2>\n<p>\u0406\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 CLI, \u044f\u043a\u0438\u0439 \u043c\u0438 \u0441\u0442\u0432\u043e\u0440\u0438\u043c\u043e \u0432 \u0446\u044c\u043e\u043c\u0443 \u043f\u0456\u0434\u0440\u0443\u0447\u043d\u0438\u043a\u0443 Deno, \u043f\u0440\u0438\u0439\u043c\u0430\u0442\u0438\u043c\u0435 \u043d\u0430\u0437\u0432\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u0443 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u0439 \u0440\u044f\u0434\u043e\u043a, \u0456 \u0441\u0442\u0432\u043e\u0440\u044e\u0432\u0430\u0442\u0438\u043c\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0456 \u0444\u0430\u0439\u043b \u0456\u0437 \u043a\u043e\u0434\u043e\u043c \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0456\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 React.<\/p>\n<p>\u042f \u0441\u0442\u0432\u043e\u0440\u0438\u0432 \u0431\u0456\u043b\u044c\u0448 \u043f\u043e\u0432\u043d\u0443 \u0432\u0435\u0440\u0441\u0456\u044e \u0446\u044c\u043e\u0433\u043e, \u044f\u043a\u0430 \u0442\u0430\u043a\u043e\u0436 \u0441\u0442\u0432\u043e\u0440\u044e\u0454 \u0442\u0430\u0431\u043b\u0438\u0446\u044e \u0441\u0442\u0438\u043b\u0456\u0432 SASS \u0456 \u0442\u0435\u0441\u0442\u043e\u0432\u0438\u0439 \u0444\u0430\u0439\u043b, \u043f\u0440\u0438\u0434\u0430\u0442\u043d\u0438\u0439 \u0434\u043b\u044f Jest \u0456 Enzyme. \u041d\u0435\u0437\u0430\u0431\u0430\u0440\u043e\u043c \u0431\u0443\u0434\u0435 \u0434\u043e\u0434\u0430\u043d\u043e \u0431\u0456\u043b\u044c\u0448\u0435 \u043d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u044c \u0456 \u0448\u0430\u0431\u043b\u043e\u043d\u0456\u0432 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0456\u0432 (\u043d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434, \u0442\u0438\u0445, \u0449\u043e \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u044e\u0442\u044c \u0445\u0443\u043a\u0438, \u0430\u0431\u043e Redux, \u0430\u0431\u043e Router, \u0430\u0431\u043e \u0432\u0441\u0456 \u0432\u043e\u043d\u0438).<\/p>\n<p>\u0417\u0430\u0440\u0430\u0434\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0438 \u0446\u0435\u0439 \u043f\u0456\u0434\u0440\u0443\u0447\u043d\u0438\u043a Deno \u043e\u0445\u043e\u043f\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u0456 \u043c\u043e\u043c\u0435\u043d\u0442\u0438: \u0447\u0438\u0442\u0430\u043d\u043d\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0456\u0432 \u0456 \u0437\u0430\u043f\u0438\u0441 \u0444\u0430\u0439\u043b\u0456\u0432, \u0456 \u043c\u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u043c\u043e \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b. \u0420\u0435\u0448\u0442\u0430 \u2014 \u043c\u0430\u043d\u0456\u043f\u0443\u043b\u044e\u0432\u0430\u043d\u043d\u044f \u0440\u044f\u0434\u043a\u0430\u043c\u0438 \u0442\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044f \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e\u0433\u043e \u0432\u043c\u0456\u0441\u0442\u0443, \u043d\u0456\u0447\u043e\u0433\u043e \u043e\u0441\u043e\u0431\u043b\u0438\u0432\u043e\u0433\u043e. \u0412\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0440\u0438\u043c\u0430\u0442\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043e \u043f\u043e\u0432\u043d\u043e\u0433\u043e \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0443 Deno CLI \u0434\u043b\u044f \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 React \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e SASS \u0456 Jest \u0443 \u0440\u0435\u043f\u043e \u0432 \u043a\u0456\u043d\u0446\u0456 \u0446\u0456\u0454\u0457 \u0441\u0442\u0430\u0442\u0442\u0456.<\/p>\n<h2>\u0412\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438 Deno<\/h2>\n<p>\u0429\u043e\u0431 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u0446\u0435\u0439 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI, \u0432\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438 \u0441\u0435\u0440\u0435\u0434\u043e\u0432\u0438\u0449\u0435 \u0432\u0438\u043a\u043e\u043d\u0430\u043d\u043d\u044f. \u042f\u043a\u0449\u043e \u0432\u0438 \u0432\u0436\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0454\u0442\u0435 Homebrew \u043d\u0430 macOS, \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0448\u0432\u0438\u0434\u043a\u043e \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438 Deno \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e:<\/p>\n<pre><code>brew install deno<\/code><\/pre>\n<p>\u042f\u043a\u0449\u043e \u0432\u0438 \u043d\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0454\u0442\u0435 Homebrew, \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438 \u0439\u043e\u0433\u043e \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e CURL:<\/p>\n<pre><code>curl -fsSL https:\/\/deno.land\/x\/install\/install.sh | sh<\/code><\/pre>\n<p>\u0406\u043d\u0448\u0456 \u043c\u0435\u0442\u043e\u0434\u0438 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0456 \u0432 <a href=\"https:\/\/deno.land\/manual\/getting_started\/installation\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">\u043f\u043e\u0441\u0456\u0431\u043d\u0438\u043a\u0443 Deno<\/a>.<\/p>\n<h2>\u0427\u0438\u0442\u0430\u043d\u043d\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0456\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0433\u043e \u0440\u044f\u0434\u043a\u0430 \u0432 Deno<\/h2>\n<p>\u041d\u0430\u0439\u0432\u0430\u0436\u043b\u0438\u0432\u0456\u0448\u0435, \u0449\u043e \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u0434\u043b\u044f \u043d\u0430\u0448\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430, \u2014 \u0446\u0435 \u0432\u0437\u044f\u0442\u0438 \u043d\u0430\u0437\u0432\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u041d\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u043c\u0430\u0442\u0438 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0438 \u043d\u0430\u0437\u0432\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0443 <a href=\"https:\/\/startfunction.com\/tag\/deno\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Deno<\/a>. \u0421\u0442\u0432\u043e\u0440\u0456\u0442\u044c \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0456 \u0434\u043e\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b \u043f\u0456\u0434 \u043d\u0430\u0437\u0432\u043e\u044e <code>mod.ts<\/code>\u0442\u0430 \u0432\u0441\u0442\u0430\u0432\u0442\u0435 \u0432 \u043d\u044c\u043e\u0433\u043e \u0446\u0435:<\/p>\n<pre><code>const { args: [name] } = Deno;\nconsole.log( `Writing component ${ name }` );<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440, \u043a\u043e\u043b\u0438 \u0432\u0438 \u0434\u043e\u0434\u0430\u0454\u0442\u0435 <code>Deno<\/code>\u0437\u043c\u0456\u043d\u043d\u0443, \u0432\u0438, \u0439\u043c\u043e\u0432\u0456\u0440\u043d\u043e, \u043e\u0442\u0440\u0438\u043c\u0430\u0454\u0442\u0435 \u043f\u043e\u043f\u0435\u0440\u0435\u0434\u0436\u0435\u043d\u043d\u044f, \u0437\u0430\u043b\u0435\u0436\u043d\u043e \u0432\u0456\u0434 \u0432\u0430\u0448\u043e\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0443 \u0442\u0430 \u0439\u043e\u0433\u043e \u043f\u0456\u0434\u0442\u0440\u0438\u043c\u043a\u0438 TypeScript, \u043f\u0440\u043e \u0442\u0435, \u0449\u043e \u0432\u0456\u043d \u043d\u0435 \u043c\u043e\u0436\u0435 \u0437\u043d\u0430\u0439\u0442\u0438 <code>Deno<\/code>\u043d\u0430\u0437\u0432\u0443. \u042f\u043a\u0449\u043e \u0432\u0438 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0454\u0442\u0435 VS Code, \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0438\u0440\u0456\u0448\u0438\u0442\u0438 \u0446\u044e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u043e\u0444\u0456\u0446\u0456\u0439\u043d\u043e\u0433\u043e <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=denoland.vscode-deno\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">\u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f VS Code, \u0449\u043e\u0431 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u0456\u0434\u0442\u0440\u0438\u043c\u043a\u0443 Deno<\/a>. JetBrains \u0442\u0430\u043a\u043e\u0436 \u043e\u043f\u0443\u0431\u043b\u0456\u043a\u0443\u0432\u0430\u0432 \u043f\u043b\u0430\u0433\u0456\u043d \u0434\u043b\u044f \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/14382-deno\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">\u043f\u0456\u0434\u0442\u0440\u0438\u043c\u043a\u0438 Deno \u0434\u043b\u044f JetBrain IDE<\/a>.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440 \u0437\u0430\u043f\u0443\u0441\u0442\u0456\u0442\u044c \u0446\u0435\u0439 \u043c\u043e\u0434\u0443\u043b\u044c \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e:<\/p>\n<p><code>deno run mod.ts<\/code>\u041f\u0440\u0438\u0432\u0456\u0442 \u0421\u0432\u0456\u0442<\/p>\n<p>\u0426\u0435 \u0432\u0456\u0434\u043f\u043e\u0432\u0456\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u0438\u043c \u043d\u0430\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c \u00abHelloWorld\u00bb:<\/p>\n<p><code>Writing component HelloWorld<\/code><\/p>\n<p>\u043f\u0440\u0438\u0454\u043c\u043d\u043e! \u0426\u0435 \u043f\u0440\u0430\u0446\u044e\u0454!<\/p>\n<h2>\u0417\u0430\u043f\u0438\u0441 \u0444\u0430\u0439\u043b\u0456\u0432 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e Deno<\/h2>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0437\u0430\u0440\u0430\u0437 \u0437\u0430\u043f\u0438\u0448\u0435\u043c\u043e \u0444\u0430\u0439\u043b. \u0421\u043f\u043e\u0447\u0430\u0442\u043a\u0443 \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u0435\u043d \u0432\u043c\u0456\u0441\u0442 \u0434\u043b\u044f \u043d\u044c\u043e\u0433\u043e, \u0442\u043e\u043c\u0443 \u0434\u043e\u0434\u0430\u0439\u0442\u0435 \u0439\u043e\u0433\u043e \u0434\u043e <code>mod.ts<\/code>\u0444\u0430\u0439\u043b\u0443. \u041c\u0438 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u0454\u043c\u043e \u043b\u0456\u0442\u0435\u0440\u0430\u043b\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u0443 <a href=\"https:\/\/startfunction.com\/category\/javascript\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">JavaScript<\/a>, \u0449\u043e\u0431 \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u043e\u0434\u0438\u043d \u0440\u044f\u0434\u043e\u043a \u0456 \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0430\u0437\u0432\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0442\u0430 \u043d\u0430\u0432\u0456\u0442\u044c \u0432\u0438\u043a\u043b\u0438\u043a\u0430\u0442\u0438 \u043c\u0435\u0442\u043e\u0434 \u0440\u044f\u0434\u043a\u0430, \u0449\u043e\u0431 \u0437\u0440\u043e\u0431\u0438\u0442\u0438 \u0439\u043e\u0433\u043e \u043c\u0430\u043b\u0438\u043c \u0440\u0435\u0433\u0456\u0441\u0442\u0440\u043e\u043c:<\/p>\n<pre><code>const compoContent: string = `import React from 'react';\nimport PropTypes from 'prop-types';\n\n${name}.propTypes = {\n\n};\nfunction ${name}(props) {\n    return();\n}\nexport default ${name};\n`;<\/code><\/pre>\n<p>\u0429\u043e\u0431 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u0438 \u0446\u0435 \u0443 \u0444\u0430\u0439\u043b, \u043d\u0430\u043c \u0441\u043f\u043e\u0447\u0430\u0442\u043a\u0443 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u0438, \u0447\u0438 \u0456\u0441\u043d\u0443\u0454 \u043a\u0430\u0442\u0430\u043b\u043e\u0433. \u0414\u043b\u044f \u0446\u044c\u043e\u0433\u043e \u043c\u0438 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u0454\u043c\u043e <code>ensureDir<\/code>\u0444\u0443\u043d\u043a\u0446\u0456\u044e, \u044f\u043a\u0430 \u0454 \u0447\u0430\u0441\u0442\u0438\u043d\u043e\u044e <a href=\"https:\/\/deno.land\/std\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0457 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438 Deno<\/a>. \u0412\u0456\u043d \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0430\u0431\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438, \u044f\u043a\u0449\u043e \u0432\u043e\u043d\u0438 \u043d\u0435 \u0456\u0441\u043d\u0443\u044e\u0442\u044c. \u0429\u043e\u0431 \u043d\u0430\u043a\u0430\u0437\u0430\u0442\u0438 Deno \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u0446\u044e \u0437\u0430\u043b\u0435\u0436\u043d\u0456\u0441\u0442\u044c, \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u043e\u0434\u0430\u0439\u0442\u0435 \u0446\u0435 \u0443 \u0432\u0435\u0440\u0445\u043d\u0456\u0439 \u0447\u0430\u0441\u0442\u0438\u043d\u0456 \u0444\u0430\u0439\u043b\u0443:<\/p>\n<pre><code>import { ensureDir } from \"https:\/\/deno.land\/std\/fs\/ensure_dir.ts\";<\/code><\/pre>\n<p>\u041a\u043e\u043b\u0438 \u043c\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0454\u043c\u043e \u043d\u0430\u0448 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, Deno \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0438\u0442\u044c \u0446\u0435\u0439 \u043c\u043e\u0434\u0443\u043b\u044c, \u0449\u043e\u0431 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u0439\u043e\u0433\u043e. \u041d\u0430\u0440\u0435\u0448\u0442\u0456 \u043d\u0430\u0441\u0442\u0430\u0432 \u0447\u0430\u0441 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u0438 \u0444\u0430\u0439\u043b \u0437\u0430 <code>writeTestFile<\/code>\u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0438 \u0441\u0435\u0440\u0435\u0434\u043e\u0432\u0438\u0449\u0430 \u0432\u0438\u043a\u043e\u043d\u0430\u043d\u043d\u044f Deno. \u0412\u0441\u0442\u0430\u0432\u0442\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0435 \u0432 \u043a\u0456\u043d\u0446\u0456 \u0444\u0430\u0439\u043b\u0443:<\/p>\n<pre><code>const compoPath: string = \".\/app\/components\/\" + compoName + \"\/\";\n\nensureDir(compoPath)\n  .then(() =&gt; {\n    Deno.writeTextFile(compoPath + \"index.js\", compoContent);\n    console.info(\"Done!\");\n});<\/code><\/pre>\n<h2>\u041c\u0456\u0441\u0446\u0435\u0432\u0438\u0439 \u0442\u0435\u0441\u0442<\/h2>\n<p>\u041c\u0438 \u0437\u0430\u043a\u0456\u043d\u0447\u0438\u043b\u0438 \u043a\u043e\u0434\u0443\u0432\u0430\u0442\u0438 \u043d\u0430\u0448 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI \u0456 \u0442\u0435\u043f\u0435\u0440 \u043c\u043e\u0436\u0435\u043c\u043e \u0439\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0443\u0432\u0430\u0442\u0438. Deno \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043e \u044f\u043a \u0431\u0435\u0437\u043f\u0435\u0447\u043d\u0435 \u0441\u0435\u0440\u0435\u0434\u043e\u0432\u0438\u0449\u0435 \u0432\u0438\u043a\u043e\u043d\u0430\u043d\u043d\u044f, \u0442\u043e\u043c\u0443 \u0442\u0430\u043a\u0456 \u043e\u043f\u0435\u0440\u0430\u0446\u0456\u0457, \u044f\u043a \u0447\u0438\u0442\u0430\u043d\u043d\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0457 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0430\u0431\u043e \u0437\u0430\u043f\u0438\u0441 \u0443 \u043d\u0435\u0457, \u0437\u0430\u0431\u043e\u0440\u043e\u043d\u0435\u043d\u0456 \u0437\u0430 \u0443\u043c\u043e\u0432\u0447\u0430\u043d\u043d\u044f\u043c. \u0412\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u044f\u0432\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442\u0438 Deno \u0434\u043e\u0437\u0432\u043e\u043b\u0438\u0442\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043e \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0457 \u0441\u0438\u0441\u0442\u0435\u043c\u0438. \u0412\u0456\u043d \u0440\u043e\u0437\u0434\u0456\u043b\u0435\u043d\u0438\u0439 \u043d\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u043d\u043d\u044f \u0442\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u0437\u0430\u043f\u0438\u0441\u0443. \u0423 \u0446\u044c\u043e\u043c\u0443 \u0432\u0438\u043f\u0430\u0434\u043a\u0443 \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u0435\u043d \u0434\u043e\u0437\u0432\u0456\u043b \u043d\u0430 \u0447\u0438\u0442\u0430\u043d\u043d\u044f, \u043e\u0441\u043a\u0456\u043b\u044c\u043a\u0438 <code>ensureDir<\/code>\u0441\u043f\u043e\u0447\u0430\u0442\u043a\u0443 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0456 \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u0438 \u0439\u043e\u0433\u043e \u0456\u0441\u043d\u0443\u0432\u0430\u043d\u043d\u044f. \u042f\u043a\u0449\u043e \u043d\u0456, \u0432\u0456\u043d \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u0439\u043e\u0433\u043e, \u0430 \u043f\u043e\u0442\u0456\u043c \u043c\u0438 \u0441\u0442\u0432\u043e\u0440\u0438\u043c\u043e \u0444\u0430\u0439\u043b. \u0414\u043b\u044f \u043e\u0441\u0442\u0430\u043d\u043d\u0456\u0445 \u0434\u0432\u043e\u0445 \u0437\u0430\u0432\u0434\u0430\u043d\u044c \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u0435\u043d \u0434\u043e\u0437\u0432\u0456\u043b \u043d\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044f. \u041e\u0441\u044c \u044f\u043a \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0439\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438:<\/p>\n<p><code>deno --allow-read --allow-write mod.ts button<\/code><\/p>\n<p>\u0406 \u0432\u0438 \u043c\u0430\u0442\u0438\u043c\u0435\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438, \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u0456 \u0440\u0430\u0437\u043e\u043c \u0456\u0437 \u0444\u0430\u0439\u043b\u043e\u043c, \u0443\u0441\u0456 \u0432\u0456\u0434\u043d\u043e\u0441\u043d\u043e \u043f\u0430\u043f\u043a\u0438, \u0434\u0435 \u0432\u0438 \u0432\u0438\u043a\u043e\u043d\u0443\u0454\u0442\u0435 \u0446\u0435, \u043d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434 <code>app\/components\/Button\/index.js<\/code>.<\/p>\n<h2>\u041e\u043f\u0443\u0431\u043b\u0456\u043a\u0443\u0439\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044c Deno<\/h2>\n<p>\u041f\u043e\u0448\u0438\u0440\u044e\u0432\u0430\u0442\u0438 \u043c\u043e\u0434\u0443\u043b\u044c Deno \u043f\u0440\u043e\u0441\u0442\u043e. \u041c\u0438 \u0434\u043e\u043a\u043b\u0430\u0434\u043d\u043e \u0440\u043e\u0437\u0433\u043b\u044f\u043d\u0443\u043b\u0438 \u0446\u0435 \u0432 \u043f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u0456\u0439 \u043f\u0443\u0431\u043b\u0456\u043a\u0430\u0446\u0456\u0457 \u043f\u0440\u043e <a href=\"https:\/\/wordpress.mediadoma.com\/uk\/opublikujte-modul-deno-za-3-shvydki-kroky\/\" title=\"\u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0442\u0430 \u043f\u0443\u0431\u043b\u0456\u043a\u0430\u0446\u0456\u044e \u043c\u043e\u0434\u0443\u043b\u044f Deno \u043d\u0430 GitHub\">\u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0442\u0430 \u043f\u0443\u0431\u043b\u0456\u043a\u0430\u0446\u0456\u044e \u043c\u043e\u0434\u0443\u043b\u044f Deno \u043d\u0430 GitHub<\/a>. \u0412\u0430\u043c \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u0456\u043d\u0456\u0446\u0456\u0430\u043b\u0456\u0437\u0443\u0432\u0430\u0442\u0438 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0435 \u0441\u0445\u043e\u0432\u0438\u0449\u0435 git:<\/p>\n<p><code>git init<\/code><\/p>\n<p>\u0434\u043e\u0434\u0430\u0439\u0442\u0435 \u0442\u0430 \u0437\u0430\u0444\u0456\u043a\u0441\u0443\u0439\u0442\u0435 \u0441\u0432\u043e\u0457 \u0444\u0430\u0439\u043b\u0438:<\/p>\n<p><code>git add .<\/code><br \/>\n<code>git commit -m \"Initial commit\"<\/code><\/p>\n<p>\u0441\u0442\u0432\u043e\u0440\u0456\u0442\u044c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0456\u0439 \u043d\u0430 GitHub \u0430\u0431\u043e \u0441\u0445\u043e\u0436\u0456\u0439 \u0441\u043b\u0443\u0436\u0431\u0456 \u0442\u0430 \u043d\u0430\u0434\u0456\u0448\u043b\u0456\u0442\u044c \u0439\u043e\u0433\u043e. \u041d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434, \u044f\u043a\u0449\u043e \u0432\u0438 \u0441\u0442\u0432\u043e\u0440\u044e\u0454\u0442\u0435 \u0440\u0435\u043f\u043e \u0437 \u043d\u0430\u0437\u0432\u043e\u044e <code>a-deno-module<\/code>\u043d\u0430 GitHub, \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u0446\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e, \u0449\u043e\u0431 \u0432\u0456\u0434\u043f\u0440\u0430\u0432\u0438\u0442\u0438 \u0439\u043e\u0433\u043e \u0432 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442:<\/p>\n<p><code>git remote add origin git@github.com:YOUR-GITHUB-USER\/a-deno-module.git&lt;br&gt;git push -u origin master<\/code><\/p>\n<h2>\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 \u043e\u043f\u0443\u0431\u043b\u0456\u043a\u043e\u0432\u0430\u043d\u0438\u0439 \u0432 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456 \u043c\u043e\u0434\u0443\u043b\u044c<\/h2>\n<p>Deno \u043c\u043e\u0436\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u0438 \u043c\u043e\u0434\u0443\u043b\u0456 \u0431\u0435\u0437\u043f\u043e\u0441\u0435\u0440\u0435\u0434\u043d\u044c\u043e \u0437 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443 \u0442\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u044e\u0432\u0430\u0442\u0438 \u0441\u0432\u043e\u0457 \u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456. \u0422\u0435\u043f\u0435\u0440, \u043a\u043e\u043b\u0438 \u0439\u043e\u0433\u043e \u0440\u043e\u0437\u0433\u043e\u0440\u043d\u0443\u0442\u043e, \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u043d\u0430\u0448 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI \u0431\u0435\u0437\u043f\u043e\u0441\u0435\u0440\u0435\u0434\u043d\u044c\u043e \u0437 GitHub:<\/p>\n<pre><code>deno run --allow-read --allow-write https:\/\/raw.githubusercontent.com\/YOUR-GITHUB-USER\/a-deno-module\/master\/mod.ts button<\/code><\/pre>\n<p>Deno \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0438\u0442\u044c \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u044c \u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456 \u0442\u0430 \u0437\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u0438 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0457\u0445. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u0443\u0434\u0435 \u0442\u0430\u043a\u0438\u043c \u0436\u0435, \u044f\u043a \u0456 \u0432\u0438\u0449\u0435, \u0431\u0443\u0434\u0435 \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438 \u0442\u0430 \u0444\u0430\u0439\u043b.<\/p>\n<p>\u0429\u043e\u0431 \u0443\u043d\u0438\u043a\u043d\u0443\u0442\u0438 \u043d\u0435\u043e\u0431\u0445\u0456\u0434\u043d\u043e\u0441\u0442\u0456 \u043f\u0438\u0441\u0430\u0442\u0438 \u0432\u0441\u0435 \u0446\u0435 (\u0430\u0431\u043e \u0448\u0443\u043a\u0430\u0442\u0438 \u0446\u0435 \u0432 \u043e\u0431\u043e\u043b\u043e\u043d\u0446\u0456), Deno \u0434\u043e\u0437\u0432\u043e\u043b\u044f\u0454 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438 \u0446\u0435\u0439 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u0449\u043e\u0431 \u0432\u0456\u043d \u043f\u0440\u0430\u0446\u044e\u0432\u0430\u0432 \u043e\u0444\u043b\u0430\u0439\u043d:<\/p>\n<pre><code>deno install --allow-read --allow-write --name denomodu https:\/\/raw.githubusercontent.com\/YOUR-GITHUB-USER\/a-deno-module\/master\/mod.ts<\/code><\/pre>\n<p>\u0406\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0431\u0443\u0434\u0435 \u043d\u0430\u0437\u0438\u0432\u0430\u0442\u0438\u0441\u044f <code>denomodu<\/code>. \u0426\u0435 \u0441\u0442\u0432\u043e\u0440\u044e\u0454 \u0432\u0438\u043a\u043e\u043d\u0443\u0432\u0430\u043d\u0438\u0439 \u0444\u0430\u0439\u043b \u0456\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u043c \u0440\u044f\u0434\u043a\u043e\u043c \u0443 \u043f\u0435\u0432\u043d\u043e\u043c\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0437\u0456, \u044f\u043a <code>\/Users\/%your-username%\/.deno\/bin<\/code>\u0443 macOS. \u0419\u043e\u0433\u043e \u0437\u043c\u0456\u0441\u0442\u043e\u043c \u0454 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0443 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0443 \u0442\u0430 \u043f\u0440\u0438\u0439\u043d\u044f\u0442\u0442\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0456\u0432:<\/p>\n<pre><code>#!\/bin\/sh\n\ndeno \"run\" \"--allow-read\" \"--allow-write\" \"https:\/\/raw.githubusercontent.com\/eliorivero\/react-generate-component\/master\/mod.ts\" \"$@\"<\/code><\/pre>\n<p>\u041e\u0442\u0436\u0435, \u043a\u043e\u043b\u0438 \u043f\u0440\u043e\u0446\u0435\u0441 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0441\u044f, \u044f\u043a\u0449\u043e \u0432\u0438 \u043d\u0435 \u0434\u043e\u0434\u0430\u043b\u0438 <code>.\/deno\/bin<\/code>\u0448\u043b\u044f\u0445 \u0434\u043e \u0437\u043c\u0456\u043d\u043d\u043e\u0457 \u0441\u0435\u0440\u0435\u0434\u043e\u0432\u0438\u0449\u0430 PATH, Deno \u0437\u0430\u043f\u0440\u043e\u043f\u043e\u043d\u0443\u0454 \u0432\u0430\u043c \u0446\u0435 \u0437\u0440\u043e\u0431\u0438\u0442\u0438, \u0449\u043e\u0431 \u0432\u0438 \u043c\u043e\u0433\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442.<\/p>\n<p>\u041f\u0456\u0441\u043b\u044f \u0434\u043e\u0434\u0430\u0432\u0430\u043d\u043d\u044f \u0448\u043b\u044f\u0445\u0443 \u0434\u043e \u0437\u043c\u0456\u043d\u043d\u043e\u0457 PATH \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0438\u043a\u043b\u0438\u043a\u0430\u0442\u0438 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442:<\/p>\n<p><code>denomodu button<\/code><\/p>\n<p>\u0412\u0456\u043d \u043d\u0430\u0431\u0430\u0433\u0430\u0442\u043e \u043a\u043e\u0440\u043e\u0442\u0448\u0438\u0439 \u0456 \u0442\u0435\u043f\u0435\u0440 \u043f\u0440\u0430\u0446\u044e\u0454 \u0431\u0435\u0437 \u043f\u0456\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044f \u0434\u043e \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443. \u0429\u0438\u0440\u043e \u0432\u0456\u0442\u0430\u044e! \u0412\u0438 \u0441\u0442\u0432\u043e\u0440\u0438\u043b\u0438 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI, \u043e\u043f\u0443\u0431\u043b\u0456\u043a\u0443\u0432\u0430\u043b\u0438 \u0439\u043e\u0433\u043e \u0442\u0430 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e.<\/p>\n<h2>\u0406\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno CLI \u0434\u043b\u044f \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 React<\/h2>\n<p>\u042f\u043a \u0437\u0433\u0430\u0434\u0443\u0432\u0430\u043b\u043e\u0441\u044f \u043d\u0430 \u043f\u043e\u0447\u0430\u0442\u043a\u0443 \u0446\u044c\u043e\u0433\u043e \u043f\u0456\u0434\u0440\u0443\u0447\u043d\u0438\u043a\u0430 Deno, \u044f \u0441\u0442\u0432\u043e\u0440\u0438\u0432 \u0431\u0456\u043b\u044c\u0448 \u043f\u043e\u0432\u043d\u0443 \u0432\u0435\u0440\u0441\u0456\u044e \u0446\u044c\u043e\u0433\u043e, \u0456 \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0440\u0438\u043c\u0430\u0442\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043e \u0440\u0435\u043f\u043e \u0434\u043b\u044f \u0446\u044c\u043e\u0433\u043e \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0443 \u0442\u0443\u0442:<\/p>\n<p><a href=\"https:\/\/github.com\/eliorivero\/react-generate-component\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/github.com\/eliorivero\/react-generate-component<\/a><\/p>\n<p>\u0426\u0435 \u043b\u0438\u0448\u0435 \u043e\u0434\u0438\u043d \u043c\u043e\u0434\u0443\u043b\u044c Deno, \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u0438\u0439 \u043d\u0430 TypeScript \u0456 \u0441\u0442\u0432\u043e\u0440\u044e\u0454 \u0446\u0456 \u0444\u0430\u0439\u043b\u0438:<\/p>\n<ul>\n<li><code>index.js<\/code>, \u0444\u0443\u043d\u043a\u0446\u0456\u043e\u043d\u0430\u043b\u044c\u043d\u0438\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 React<\/li>\n<li><code>style.scss<\/code>, \u0439\u043e\u0433\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u044e \u0441\u0442\u0438\u043b\u0456\u0432 SASS<\/li>\n<li><code>test.js<\/code>, \u043f\u0440\u043e\u0441\u0442\u0438\u0439 \u0442\u0435\u0441\u0442 \u0456\u0437 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f\u043c Jest \u0456 Enzyme<\/li>\n<\/ul>\n<p>\u041d\u0430 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u0456 \u043d\u0438\u0436\u0447\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e, \u044f\u043a \u0446\u0435\u0439 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Deno \u043f\u0440\u0430\u0446\u044e\u0454 \u043f\u0456\u0441\u043b\u044f \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f:<\/p>\n<p>\u0412\u0456\u043d \u043f\u0440\u0438\u0439\u043c\u0430\u0454 \u0441\u043a\u043b\u0430\u0434\u0435\u043d\u0456 \u043d\u0430\u0437\u0432\u0438, \u0440\u043e\u0437\u0434\u0456\u043b\u0435\u043d\u0456 \u0442\u0438\u0440\u0435. \u041d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434, \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 <code>nav-bar<\/code>\u0441\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u043f\u0456\u0434 \u043d\u0430\u0437\u0432\u043e\u044e <code>NavBar<\/code>. \u0412\u0438 \u0442\u0430\u043a\u043e\u0436 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043a\u0430\u0437\u0430\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u044e\u0432\u0430\u043d\u0438\u0439 \u0448\u043b\u044f\u0445 \u0434\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0443, \u0432\u0456\u0434\u043c\u0456\u043d\u043d\u0438\u0439 \u0432\u0456\u0434 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e <code>app\/components<\/code>, \u0447\u0438 \u043d\u0456, \u0456 \u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0443\u0432\u0430\u0442\u0438 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u0448\u043b\u044f\u0445 \u0437\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0443\u0432\u0430\u043d\u043d\u044f\u043c.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0414\u0436\u0435\u0440\u0435\u043b\u043e \u0437\u0430\u043f\u0438\u0441\u0443:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/startfunction.com\" class=\"external external_icon\">startfunction.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0442\u0432\u043e\u0440\u0438\u043c\u043e \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u044f\u043a\u0438\u0439 \u0433\u0435\u043d\u0435\u0440\u0443\u0454 \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0456\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 React.<\/p>\n","protected":false},"author":1,"featured_media":157660,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[735,756,839,902,1023,849,725],"tags":[1174],"class_list":["post-232013","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript-10","category-vidkryte-dzherelo","category-kerivnytstvo-dlia-pochatkivtsiv","category-kod-3","category-korysni-sajty","category-pidruchnyky","category-rozrobnyk","tag-affiai-uk"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/posts\/232013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/comments?post=232013"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/posts\/232013\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/media\/157660"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/media?parent=232013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/categories?post=232013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/uk\/wp-json\/wp\/v2\/tags?post=232013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}