Nimetic – Zero-JS Single Page Applications
Nimeticは、JavaScriptを一切使わずにシングルページアプリケーション(SPA)を構築するための新しいアプローチです。Nimプログラミング言語、Datastarライブラリ、そしてYottaDBデータベースを組み合わせることで、高速で効率的なWebアプリケーションを実現します。
背景メモ
- Nim は高速かつ軽量なシステムプログラミング言語で、Python や Rust などと比較されるが、コンパイル型でありながら動的言語に近い表現力を持つ。
- DataStar は、JavaScript を一切書かずにリアクティブなフロントエンドを構築できるハイパーメディアフレームワーク。HTMX と似た「超媒体 API」アプローチを取る。
- YottaDB は、高スループットでACIDトランザクションを保証するデータベース。元は米国の退役軍人医療システム(VHA)のために開発され、40年以上の実績を持つ。M(MUMPS)言語由来のグローバル変数ストレージを特徴とする。
- 「Nimetic」は、これら3つを組み合わせたアーキテクチャの名称。サーバーサイドでNimがレンダリングしたHTMLを、DataStarがインクリメンタル更新し、YottaDBがデータ層を担う。結果として、フロントエンドにJavaScriptが不要になり、バックエンドも1つの言語とDBで完結する。
- このアプローチが注目される背景には、JS依存のフロントエンド開発(SPA)へのアンチテーゼとして、サーバーサイドレンダリング+ハイパーメディアの流れ(HTMX、Hotwireなど)が近年盛り上がっていることがある。