
皆さんこんにちは、虎の穴ラボのY.Fです。
2025年03月14日 (金) に Deno についてのLT会 『toranoana.deno #20』を開催しました。
20回記念ということで、今回は特別にオンラインとオフラインのハイブリッド開催となりました!本記事でその模様や、どういった発表内容があったかについて書いていこうと思います!
イベント紹介
虎の穴ラボで、Deno の勉強会を開催する意図や、会社の案内をさせていただいています。
資料はこちらです。
配信はアーカイブで視聴することも可能です。
開催概要
| 時間 | 内容 | 発表者 |
|---|---|---|
| 15:30 | 受付開始 | |
| 16:00 | 挨拶/配信案内 | |
| 16:05 | Denoの実プロダクト採用へ向けた取り組み | 藤原 佳顕 |
| 16:20 | Node.js, Deno, Bun 最新動向とその所感について | 古川 陽介 |
| 16:50 | VSCode Extention を Deno で作ってみた | Yoshiya Hinosawa |
| 17:05 | 休憩 | |
| 17:15 | deno lintがついにプラグインに対応 - カスタムルールを実装しよう | Yusuke Tanaka |
| 17:30 | What is JSR | Leo Kettmeir |
| 17:45 | バックエンドNode.js × フロントエンドDeno で開発して得られた知見 | ayame113 |
| 18:00 | 休憩 | |
| 18:10 | DenoでOpenTelemetryに入門する | nus3 |
| 18:25 | DenoでCLIアプリを作る ~ 虎の穴ラボでの利用例を添えて ~ | 奥谷 一陽 |
| 18:40 | クローズ/懇親会準備 | |
| 18:45 | 休憩/懇親会準備 | |
| 18:50 | 懇親会開始、飛び込みLT OK枠予定 | |
| 20:00 | 懇親会終了 |
LT レポート
各LTの内容についてレポートします。
Deno の実プロダクト採用に向けた取り組み - 虎の穴ラボ 藤原
筆者の発表になります。 本発表では、一般的に考えられる新規技術採用の課題点を上げつつ、現状社内でどのようなことがハードルになっており、どうやって改善しようとしているかについて発表しました。
具体的な取り組み内容としては、
- なぜ社内でDenoがなかなか採用されないのかという課題認識と考察が共有されました。
- Denoを採用するにあたってのハードルに対して、どのようなアプローチでDeno導入を進めているかの活動内容が紹介
- 具体的に作成している社内アプリについての例を紹介
- 上記をどうやって進めているかについての紹介
- 上記社内アプリをペアプログラミングで進めていることについての紹介
- 具体的にDenoをサーバーサイドのアプリとして利用している例の紹介
などがありました。現在作成中のアプリはまだ本稼働していないので、また完成したらどこかで発表したいと思います。
Node.js, Deno, Bun 最新動向とその所感について - 古川 陽介 さん
Japan Node.js Association の代表である古川さんより、Node.js, Deno, Bun の最新動向とそれらに対する所感について発表していただきました。
- 各種ランタイムの最近の動向の発表
- Node.js : TypeScript のストリップモードの採用、ES Modules と CommonJS の段階的移行を可能にする require() の拡張 (require ESM)、EOLを迎えたバージョンに対する脆弱性レポートの方向性など
- Deno: JSR (JavaScript Registry) の盛り上げ、Node.js/NPM との互換性向上、WebAssembly モジュールのサポート、OpenTelemetry への対応など
- Bun: とにかくパフォーマンス重視な点の紹介。起動時間やHTTPサーバーの性能、NPMインストール速度などをNode.jsやDenoと比較して紹介。 また、Bun.sqlite, Bun.S3, Bun.serve などの独自APIの紹介
- 最後に、一人パネルディスカッションとして、各ランタイムの代表(という設定の古川さん一人三役)がそれぞれの立場からコメントするパネルディスカッション形式の発表が行われました。 長年Node.jsと関わっている方としての内容でとても面白かったです。
特に、最後の一人パネルディスカッションはとても楽しく聞けました。だいぶ笑わせて頂きました😆 会場もだいぶ盛り上がっていました!
VS Code Extension を Deno で作ってみた - Yoshiya Hinosawa さん
Deno社の方の発表になります。タイトル通り、VSCodeの拡張機能をDenoで作ってみた知見の発表となります。
趣味で作成しているゲーム開発のためのVS Code Extension(ピクセルエディター、マップエディター)をDenoで開発した事例が紹介されています。
トピックとしては、
- Denoで作るにあたって、型チェック、ビルド、リント、フォーマットがしたい
- 上記を行うにあたってのバンドラーの利用や、それに伴う型チェックの解消方法の紹介
- 特に、型チェック方法として、@ts-typeやreferenceの利用方法の紹介
などがありました。
通常のWebアプリ作成など以外の用途として、参考になる発表だったかと思います。
deno lintがついにプラグインに対応 - カスタムルールを実装しよう - Yusuke Tanakaさん
こちらも、Deno社の方の発表となります。 deno lintにプラグイン機能を導入するにあたってのタイムラインや、POCから正式リリースに至るまでの経緯が紹介されました。
具体的には、
- deno lintはRustで書かれているが、プラグインはJS/TSで書きたいため、それをどのようにJS/TSの世界に持っていくか
- また、上記に加えてアーキテクチャとして、ESLintに近いAPIの提供や、サンドボックス環境での実行などについて、どうやって進めたかについての紹介
- カスタムルールのESLintとの比較
などの内容がありました。
カスタムルールが設定できることでより柔軟にLintを使っていく事ができると思います。ここらへんのツールのためにDenoを使っている方もいると思いますので、そういった用途でもより採用しやすくなると思いました。
What is JSR - Leo Kettmeir
続けてこちらも、Deno社の方の発表となります。
Deno社からリリースされているパッケージリポジトリである、JSRの紹介になります。
- JSRの目的の紹介
- セマンティックバージョニングの強制、型定義の標準化、ドキュメントの提供など
- JSRの使い方の紹介
- パッケージの検索、公開、スコアリングシステム、互換性情報、インストール方法、APIドキュメントなど
- 今後のロードマップの紹介
Deno書いているとJSRは普通に出てくるし、よく使われているかと思います。コメントがそのままドキュメントになったりなど、ライブラリ作成側にとっても便利な機能があると思いました。
今後なにかライブラリを作る機会があればJSRフレンドリーなことを目指すとクオリティも上がりそうだなと思いました。
バックエンドNode.js × フロントエンドDeno で開発して得られた知見 - ayame113さん
こちらの発表では、バックエンドに Node.js、フロントエンドに Deno を使用して開発を行った経験から得られた知見について発表がありました。
- なぜDenoをバックエンドで使ったか、フロントエンドで使わなかったかなどについての紹介
- 具体的な開発方法として、Node.js と Deno を1つのプロジェクトで共存させるためのディレクトリ構成やエディタ設定(VS Code の Deno 拡張機能の設定)、利点としての型共有の方法などの紹介
- 実際に開発を行う上での苦労した点(一部 NPM ライブラリの非互換性、node_modules からの脱却の難しさ)、良かった点(Deno のツール周りの良さ、Node.js と Deno の良いとこ取りができる点、Deno Deploy の快適さ)の説明
筆者の発表でも作ってみた系の発表をしましたが、こちらはよりプロダクトに近い発表となっており、個人的にも参考にさせていただきたい発表だと思いました。
DenoでOpenTelemetryに入門する - nus3さん
Deno 2.2 で OpenTelemetry がサポートされたことをきっかけに、OpenTelemetry について全く知識がない状態から試してみた過程が紹介されました。
- DenoをきっかけにOpenTelemetryに入門した内容の紹介
- Deno のドキュメントにある OpenTelemetry のクイックスタートを試す手順
- その結果として、Grafana の OpenTelemetry Collector のイメージに含まれる Prometheus (メトリクス収集), Tempo (トレース収集), Loki (ログ収集)といったものがどういうものかを調べた結果の共有
などがありました。
Denoで入った新機能をきっかけにより学びを深めていく様子が発表されており、とてもためになりました。
意外とログ出力は排他制御や並列処理含め悩みが多い部分かと思いますので、こういった形でランタイムレベルで解消できるとより使い勝手が上がりそうだなと感じました。
DenoでCLIアプリを作る ~ 虎の穴ラボでの利用例を添えて ~ - 虎の穴ラボ 奥谷
最後に、弊社社員の発表となります。
虎の穴ラボ社内で簡単なツールをDenoで作った発表になります。
- CLI アプリを Deno で作成する利点として、ランタイムの導入の容易さの紹介
- JSR で公開されている Deno の標準ライブラリ @std/cli の機能(引数パース、プロンプト、スピナーなど)を活用した、CLI アプリケーション開発の紹介
- 社内で実際に利用している事例として、Markdown で管理されたAPIドキュメントをPDFとして社外に提供するためのCLIツールの開発と運用について紹介
などがありました。
Denoの特徴の一つでもあるワンバイナリへのビルドを通したCLIツール作成の事例となっているかと思います。
こういった小さいツールから活用方法を見出していくよい事例になっているのではないかなと思いました。
会場の様子など
最後に、会場の様子などを写真で紹介します!
(会場の様子)

(虎の穴ラボ側の配布物)

(Deno社からいただいた配布物)

(筆者の発表の様子)

(弊社奥谷の発表の様子)

まとめ
今回の各発表内容については、なにか作ってみた、作っているとか、実際に業務で使ってみたといった内容が多かったと思います。
筆者の発表でも触れていますが、採用事例が増えると各社でもDenoを採用しやすくなると思いますので、今後もtoranoana.denoを通じてそういった内容の発表の場を提供できれば良いなと思いました!
今後もtoranoana.denoは開催していきますので、今回参加いただいた皆様も引き続き参加していただけると嬉しいです!
採用情報
虎の穴では一緒に働く仲間を募集中です!
この記事を読んで、興味を持っていただけた方はぜひ弊社の採用情報をご覧下さい。
カジュアル面談やエンジニア向けイベントも随時開催中です。ぜひチェックしてみてください。 toranoana-lab.co.jp