https://github.com/tntsuperman/rjs
simple, react, fast.
https://github.com/tntsuperman/rjs
framework javascript javascript-framework library progressive
Last synced: about 2 months ago
JSON representation
simple, react, fast.
- Host: GitHub
- URL: https://github.com/tntsuperman/rjs
- Owner: TNTSuperMan
- Created: 2024-10-31T13:56:59.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-03-04T10:34:58.000Z (3 months ago)
- Last Synced: 2025-03-30T08:41:33.733Z (2 months ago)
- Topics: framework, javascript, javascript-framework, library, progressive
- Language: TypeScript
- Homepage: https://tntsuperman.github.io/Rjs-homepage/
- Size: 192 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Rjs
simple, reactive, fast.簡易的でリアクティブなフレームワークを目指して開発しています。
## What
Reactとかのコード多いな~って、リアクティブの部分だけ作って
ウルトラ単純フレームワーク作りたいな~って。
そして生まれた。
- Typescript対応
- 完全()関数型
- 内部伝達用オブジェクトは使わず、配列で伝達 → コードの無駄を無くす
## How to use...
```js
import {createVElement as ve, createVText as vt} from "./dist/R.esm.min.js";function App(){
return ve(
"div", //Tag
()=>[vt(()=>"hello, world!")], //Content
()=>({id:"app"}), //Attr
{} //Event
)
}
document.body.appendChild(App().node);
```
## グローバル変数について
Rjsをnode上でjsdomとか使いたい人向けです
設定すべきはwindowのみです。以下のようにしてください。
```js
import * as R from "./dist/R.esm.min.js"
import {JSDOM} from "jsdom"
globalThis.window = new JSDOM().window;
//...Rjsのコード
console.log(R.createVText(()=>""));
```
## CDN
> npmで公開したらunpkgとかjsdelivrが出してくれるんですね[unpkg](https://unpkg.com/@tntsuperman/rjs/dist/R.global.js)
[unpkg(最小化)](https://unpkg.com/@tntsuperman/rjs/dist/R.global.min.js)
ここで紹介している以外にもモジュール版、CommonJS版、AMD、SystemJS、UMDがあります。以下をご確認ください。
[unpkg(リスト)](https://unpkg.com/browse/@tntsuperman/rjs/dist/)