Deno で扱う mdx

先日、ドキュメントサイトを作った時、マークダウンを Fresh の処理の中でレンダリングして使いました。
しかし、スタイルをつけたいがために、生の HTML を書く量が比較的多くなる結果になりました。

この生の HTML を書くのを、mdx を使えばある程度回避できそうです。
Deno で mdx を扱う方法を調べてみました。

Read More

Babylon.js Physics V2 Havok でモーターを使う

これまで何度か、Babylon.js 物理エンジンHavokが使用された Physics V2 を試してきたが、できないことがあった。
それは『モーター』。

Physics V1 には、モーターがあったが、Physics V2 にはない。
Babylon.js v7 が公開されても様子が変わらない様子だった。

しかし、正確にはドキュメントにそれがあるように書かれていないということが分かった。

コミュニティに聞いてみたりなどして、状況が分かったので一通りまとめておく。

Read More

Fresh 用の Bootstrap 5 プラグインを公開

先日、Fresh(Deno) で Bootstrap 5 をプラグインで使うを書いた。

このプラグインの話を、Denoハンズオン&もくもく会:Fresh + KV へ伺ったときにした。

「Freshは、Preact を使っているゆえに、コンポーネントライブラリの選択肢が少なめ」という話の流れで。
Bootstrap 5 をプラグインで導入することはなかったのだけど、比較的印象が良かった(良さそうだった)ので、改めて公開した。

メモがてらまとめ。

Read More

Fresh上でBabylon.jsを動かす - Havokを使った物理シミュレーションを非ブラウザ環境で

Babylon.jsを、Freshで動かしたいということを少し前から考えていた。
以前トライした時には、Preactとのつなぎ込みをうまくできずに断念した。

しかし、Fresh(Deno) で Bootstrap 5 をプラグインで使うを書き進めていたら、これを転用できると思い至った。

なのでやってみる。

この実装にあたり、DenoコミュニティとBabylon.jsコミュニティにいくつか質問を投げ込ませていただいた。感謝。

実装物はこちら。

github - Octo8080X/fresh-babylon-physics

最終的には、以下のような画面が完成します。

とりあえず動かしてみたい場合はこちら。

fresh-babylon-physics.deno.dev

Read More

Deno Deployで静的解析できないダイナミックインポートは、できない(が、条件付きで回避できることがある)

Deno Advent Calendar 2023 14 日目の記事です。

最近、Luciaを使ったFresh用の認証プラグイン「Plantation」を作った。

ダイナミックインポートも使って、デフォルトの使いやすさとユーザーでのカスタマイズ性を頭に入れて実装した。
紹介のためにデモサイトをDeno Deployに構築したら、ダイナミックインポートが動かなかった。

調べてみると、現在の仕様の理解と回避方法で対応できたので、まとめておきたい。

Read More