Skip to content

Latest commit

 

History

History
194 lines (142 loc) · 9.55 KB

File metadata and controls

194 lines (142 loc) · 9.55 KB

ran — Web Components UI ライブラリ(ranui)と TypeScript ユーティリティ(ranuts)

ran logo

ネイティブの custom elements の上に組み立てた、フレームワークに依存しない Web Components UI ライブラリ(ranui)と、tree-shaking の効く TypeScript ユーティリティライブラリ(ranuts)。その周辺のツールと英中バイリンガルのドキュメントも含みます。

license PRs welcome! Build Status Types Included forks stars

特徴 • パッケージ • クイックスタート • ドキュメント • コントリビュート


English | 中文 | 日本語 | Español | Português | 한국어 | Deutsch | فارسی

✨ 特徴

  • 🎨 UI ライブラリ: Web Components
  • 🛠️ ユーティリティライブラリ: TypeScript のユーティリティ関数
  • 🤖 機械学習: 基本的な ML ツールと実験
  • 📱 Web アプリケーション: IM チャットアプリ(プロトタイプ)
  • 🔧 開発ツール: ビルドツールとデバッグ用ユーティリティ
  • 🌐 Web3: スマートコントラクトの実験
  • 🎯 ビジュアルツール: データ可視化の実験

📦 パッケージ

このモノレポにはさまざまな実験的パッケージが入っています。

コアライブラリ(アルファ段階)

パッケージ バージョン ダウンロード数 説明
ranui ranui version npm-d Web Components ライブラリ
ranuts ranuts version npm-d ユーティリティライブラリ

実験的プロジェクト

パッケージ 説明
im チャットアプリのプロトタイプ
visual データ可視化の実験
ranite 開発ツールの実験
debug デバッグ用ユーティリティ
image-process 画像処理の実験
cpro C/C++ の学習と実験
rust Rust の学習と実験

CI が実際にどのパッケージを検査するかは packages/manifest.json に宣言されています。このファイルは説明ではなく実行されるものです。bin/run-checks.mjs はある検査を宣言したパッケージすべてに対してそれを走らせるので、そこで「検査される」と書かれたパッケージは本当に検査され、されないものはその理由が書かれています。packages/ の下にマニフェストへ載っていないディレクトリがあると pnpm run verify:packages は失敗します。つまり、検査するかどうかを誰かが決めないまま新しいパッケージが増えることはありません。

🚀 クイックスタート

インストール

# リポジトリをクローンする
git clone https://github.com/chaxus/ran.git
cd ran

# 依存関係をインストールする
pnpm install

# すべてのパッケージをビルドする
pnpm build

コアパッケージを使う

# ranui(Web Components)をインストールする
npm install ranui

# ユーティリティをインストールする
npm install ranuts

開発

# 開発サーバーを起動する
pnpm dev

# テストを実行する
pnpm test

# 特定のパッケージをビルドする
pnpm --filter ranui build

📚 ドキュメント

🤖 AI / Claude Code

このリポジトリは Claude Code のプラグイン marketplace を同梱しています。AI アシスタントがソースを掘り返さずにライブラリを読んで使えるようにするためのものです。marketplace を追加してから、使うライブラリを入れてください。

/plugin marketplace add chaxus/ran
/plugin install ranui@ran      # ranui — Web Components
/plugin install ranuts@ran     # ranuts — ユーティリティ

各 skill は import map、一覧、使用例、規約を扱い、そのパッケージに同梱された API リファレンスを指し示します。詳しくは各ライブラリの節を参照してください:ranui、ranuts。

⚠️ 重要なお知らせ

これは初期開発段階にある技術探求と学習のためのプロジェクトです。ほとんどのパッケージはアルファ段階か実験段階にあります。

要点:

  • 🚧 初期開発: ほとんどの機能はまだ作っている途中です
  • 🧪 実験的: API は頻繁に変わる可能性があります
  • 📚 学習が主眼: 主に学習と実験のためのものです

🤝 コントリビュート

学習者にも開発者にも参加してほしいと思っています。手伝い方は次のとおりです。

  1. リポジトリを Fork する
  2. 機能ブランチを 作成 する(git checkout -b feature/amazing-feature)
  3. 変更を コミット する(git commit -m 'Add amazing feature')
  4. ブランチへ プッシュ する(git push origin feature/amazing-feature)
  5. プルリクエストを 開く

開発の指針

  • 既存のコードスタイルに合わせる
  • 可能なら新機能にテストを添える
  • 必要に応じてドキュメントを更新する
  • 実験的な機能には気長に付き合う

🌟 なぜオープンソースにするのか

オープンソースには学習と革新を加速する力があると考えています。開発者としての道のりで、私は数えきれないほどのオープンソースプロジェクトに助けられてきました。この実験的なコードを公開することで、次のことを願っています。

  • 学びの経験をコミュニティと分かち合うこと
  • ほかの人がこのコードから学び、試せるようにすること
  • 協働と知識の共有を促すこと
  • 学び続け、良くし続けるための場をつくること

📊 プロジェクトの統計

Contributors

📄 ライセンス

このプロジェクトは MIT ライセンスの下で公開されています。詳しくは LICENSE を参照してください。


Ran コミュニティが ❤️ を込めて作りました

学習の役に立ったら、⭐️ をいただけると嬉しいです