🚧

今年作ったもの

2020/12/31に公開

今年作ったものです。
全部自分用のライブラリです。

zheleznaya

Reactがどうして動いているのか理解するために作った。
JSXからcreateElementのコードが吐かれるところから少しずつ機能を足していったので、コードがぐちゃぐちゃになっている。
何度か直したいと思ってブランチを切ったのだけど、どうにもこうにもうまくいかなくて、諦めた。
TypeScriptの型定義以外で200行くらいなので、いつか直したい。

これを使って動いているのがこれとかこれです。

summer

JavaのSpringフレームワークのアノテーションだけでWebAPIが作れるのを見てJSのデコレータで同じものを作ってみたくなった。
最初は内部でExpress.jsを使っていたのだけど、そこも自分で書いてみたくなったので、全部置き換えた。

上で挙げたこれのバックエンドはこのライブラリを使って作られている。
フロントからバックエンドまで全部自作で書いたブログ。ブログの記事はインメモリなので、書いてもすぐ消えます。
herokuに載せているのでPostgreSQLにつなげられるようなライブラリを作って、より自作度を高くしていきたい。

automated-omusubi

ずいぶん前に、JSのデコレータで作ったDIライブラリがあるのだけど、これはInjectするときにキーを指定しないといけなかったので、使い勝手が悪かった(その分テストはやりやすいのだけど)。
なので、TypeScriptのemitDecoratorMetadataの勉強も兼ねて、Injectも型を見てやるようにしたのがこのライブラリ。
これも、namedとかbindingとかJavaのライブラリっぽくした。

webrtc-app

WebRTCの勉強を兼ねて作ったElectronのアプリ。カメラの映像を送ることができる。
シグナリングサーバーをWebSocketで作った。あんまりたいしたことないので、見せられるものがない。

nzxt

YahooがReactのSSRを自力でやっているというのを聞いて、自分でやってみたのがこれ
やってみたらまあまあできるなと思ったので、zheleznayaでNext.jsっぽいのを作ったらどうなるかなと思って作ったのがこれ。
特に最適化もしてないので、シンプル。

これが動いているのはここ(heroku)でみられる。

以上

ほかにも色々作ったけど、ある程度の形になったのはこれくらい。
来年も頑張ります。

Discussion