虎の穴ラボ技術ブログ

虎の穴ラボ株式会社所属のエンジニアが書く技術ブログです

MENU

【JavaScript】Deno についてのLT会 toranoana.deno #19 を開催しました【TypeScript】

皆さんこんにちは、虎の穴ラボの奥谷です。

2024年12月04日 (水) に Deno についてのLT会 『toranoana.deno #19』を開催しました。

yumenosora.connpass.com

イベント紹介

虎の穴ラボで、Deno の勉強会を開催する意図や、会社の案内をさせていただいています。

資料はこちらです。

speakerdeck.com

配信はアーカイブで視聴することも可能です。

www.youtube.com

開催概要

時間 内容 発表者
19:30〜19:35 虎の穴ラボについて 虎の穴ラボ 藤原
19:35〜19:50 技術書典 17に出した同人誌で、Deno についての記事を出しました with UPDATE 虎の穴ラボ奥谷
19:50〜20:05 Deno組み込みのDoc Test機能、デモと内部実装の紹介 magurotuna さん
20:05〜20:35 Local LLMと会話できるWebアプリを作ってみた。〜Web Stream API しか勝たん〜 kbaba1001
20:35〜20:40 閉会の挨拶 虎の穴ラボ 藤原

LT レポート

各LTの内容についてレポートします。

技術書典 17に出した同人誌で、Deno についての記事を出しました with UPDATE - 虎の穴ラボ 奥谷

speakerdeck.com

弊社社員の発表になります。

技術書典 17 にて、とらのあなラボでは、『虎の穴ラボの薄い本。vol.8』を出させていただきました。

techbookfest.org

本書でDenoについての記事「Deno で作るWebをCLI」という記事を書きました。 この記事での意識した要素や、執筆時の締め切りの都合で取り込みきれなかった内容について紹介しました。

大きく以下のように2項目に分け、その中で、deno test などの固有機能について紹介記載しています。

  • Web アプリケーション

    • @std/http
    • Hono
      • Hono RPC
    • Vite
    • Fresh
  • CLI アプリケーション

    • @std/cli
    • cliffy

加えて、@stdの一部機能がunstableになるという変更が原稿執筆締め切り前後にあり、そのてんについて紹介をしました。 「本記事を読んでいただき、その中で試したこと、学んだことを toranona.denoでお話しいただければ幸い」ということでした。

『虎の穴ラボの薄い本。vol.8』は現在も0円で入手可能ですので、ぜひお手に取ってみてください。

Deno組み込みのDoc Test機能、デモと内部実装の紹介 - magurotuna さん

www.docswell.com

Denoの中の人、magurotuna さんの発表になります。

「Doc Test」すなわち、ソースコード上に記載された コメント上のコードのテストを、Deno ランタイムの機能で動作させるにあたっての開発の経緯や、内容を解説いただけました。

  • 機能実装前から Doc Test を行うサードパーティモジュールはあった。
    • 必ずしも、「挙動」が保証されていなかった。
    • 結構力技のケースも散見された。
  • 新機能では、
    • テスト間の独立性の保証
    • 元からあるdeno testとの統合
    • ASTベースでの、丁寧なスニペット変換が行われる。
  • 将来
    • LSPとの統合
    • doc generator との統合

導入前から、ご本人がXで開発途上のものを公開されていたりと、非常に興味がある機能でした。 質問も多く、盛り上がりました。

Local LLMと会話できるWebアプリを作ってみた。〜Web Stream API しか勝たん〜 - kbaba1001 さん

speakerdeck.com

Local LLM と話すためのWebアプリを開発するにあたって、Web標準APIの「Web Streams API」を中心に「1つのアプリを作るにあたっての総合技術」として紹介をいただけました。

  • ストリーミング処理がLLMと自然に話すための必要
    • Web Sockets や Web RTC とも比較検討しながらWeb Streams API を採用した
    • Deno は Web 標準APIを備え、Web Streams API をブラウザ同様に扱える
  • 音声データをpipeでFFmpegに渡して、サンプリングレートを調整
  • Streamからのテキストの取り込み
  • PostgreSQLを使ったPub/Subシステム
  • 今後は、合成音声をStreamでサーバー=>クライアントに流して再生できるようにしたい。

1つのアプリを作るための広範は、技術とその基盤でDenoがどのように使われているのか存分にお話しいただけました。 こちらも質問が多く、大変盛り上がりました。

まとめ

今回は、LT3枠での開催となりました。

ランタイムの機能と、ランタイムを使ってのアプリケーションとを広く扱った会になったと感じます。 登壇は、大歓迎です。 今回主催で紹介させていただいた「Deno で作るWebとCLI」を読んで試したこと、作ったアプリ、機能など大歓迎です。

toranoana.deno #20 開催決定!!!

2025年3月25日 東京都品川区大井町駅近郊にて開催予定です。 受付開始の際には、事前の告知もさせていただく予定となります。 開始になりましたら、ぜひお申し込みください。

会場でお会いしましょう!

採用情報

虎の穴では一緒に働く仲間を募集中です!

この記事を読んで、興味を持っていただけた方はぜひ弊社の採用情報をご覧下さい。

カジュアル面談やエンジニア向けイベントも随時開催中です。ぜひチェックしてみてください。 toranoana-lab.co.jp