DenoのWebフレームワークfreshでパスワード生成アプリ作ってみた

作りました。めちゃくちゃ雑だけど。

random-passwd-gen.deno.dev

リポジトリ: github.com

なんで作ったのか。

fresh触りたかったから。
あと業務でVue2系しか触っていないので、React系統のライブラリを触っておきたいなーと思ったので。
これでなにかを解決!とかは全くないです。

機能

一応紹介しておきます。
以下の機能をアプリの主機能として実装してます。
正直特に言うことないです。ハイ。

  • パスワード生成
  • CSVに出力する機能

freshとはなに?

island architectureというのを採用しているフレームワークで、
サーバー側でレンダリングされる静的な部分と、インタラクティブJavaScriptによる動的)な部分を独立して表示させることが可能です。
今回作ったアプリでいうと、インプットフォーム周りと、生成したパスワードを一覧表示するテーブルをインタラクティブな部分として表示させています。

パスワード生成アプリの画像。薄赤部分がインタラクティブな部分

作ってみて

まぁ、楽しい。
今回のようなアプリケーションだと、freshのカスタムハンドラという機能を用いてサーバー側でパスワード生成してフロントに渡して出力するということも可能でした。
今回はサーバー側に処理させると割とすぐにタイムアウトになっちゃうのでフロント側に寄せたんですが、あんまり効果感じなかった…(謎 このアーキテクチャがメジャーになっていくのなら、設計が結構大変になってくるのかなと思った。

直接関係はないけど、フォームの処理結構手こずってしまった。expressとかちゃんと触ったことがなかったので、今後はNodejs、Denoのサーバ系の処理ちゃんと書けるようになりたいな〜