このプロジェクトについて

ECK(Ethereum Collective Korea)は、韓国のイーサリアムエコシステムの公共財を構築する非営利チームであり、このリポジトリはその公式ホームページ兼リサーチ・ニュース・イベントハブです。「The Ticker is ETH」は、このチームが運営するTelegramチャンネルのイニシアチブです。 技術構成はReact 19 + TypeScript + Vite, Tailwind CSS 3 + Framer Motion, Three.js/React Three Fiber(3D), React Router DOM 7, react-i18next(韓国語/英語切り替え)です。認証にはPrivy(ウォレット・Google・Twitterログインおよび組み込みウォレット)を、オンチェーン機能にはthirdweb(ERC-1155バッジ, Base・Ethereumマルチチェーン)を使用しています。テストはVitest + Testing Library、入力のサニタイズはDOMPurify(XSS防止)、通知はSonnerトーストを使用し、テーマはCSS変数とTailwindのdark:クラスでダーク/ライトモードをサポートしています。 主要な画面と機能として、メンバーアバターのアニメーションがあるHeroセクション、Core Team・Contributorsプロフィール(ソーシャルリンク、貢献ヒートマップ、統計バナー)、作成と閲覧が可能なResearchブログ(パスフレーズ認証、Telegramカテゴリー、動的ロードとLoad Moreページネーション、著者フィルターとデバウンス検索)、RSSベースのNewsページ(イーサリアム週間リサーチレポート)、Eventsページ、プロフィールページ、404ページとErrorBoundaryがあります。デスクトップではイーサリアムダイヤモンドのカスタムカーソルとトレイル効果が適用され、オンチェーン貢献者バッジのクレーム/ミントフローと成功・失敗のトーストフィードバック、Research/News詳細ページのソーシャル共有ボタンも含まれています。アクセシビリティに関しては、i18nスキップナビゲーション、フォーカストラップ、label連携、aria-liveを導入しています。ルートベースのコードスプリッティング(React.lazy + Suspense)を使用しています。 データ同期は、GitHub Actions cronが毎日KST 09:00にTelegramチャンネルデータを収集・前処理して個別のarticle .mdファイルを生成し、その後RSSニュースフィードを収集してコミットする方式です。Actionsタブから手動実行も可能で、TELEGRAM_API_ID, TELEGRAM_API_HASH, TELEGRAM_SESSIONのシークレットが必要です。Telegramチャンネルのメッセージに基づいて貢献度を分析します。 開発方法は、npm install後、.env.exampleを.env.localにコピーしてVITE_PRIVY_APP_IDを設定し、npm run devで実行します。dev, build, preview, test, test:run, test:coverage, lint, analyze(バンドルサイズ分析), fetch:telegram, preprocess:telegram, fetch:newsスクリプトを提供しています。Vercelを通じてmainブランチにpushすると自動的にデプロイされます。環境変数としてPrivyアプリID、thirdwebクライアントID、Base・EthereumそれぞれのERC-1155バッジコントラクトアドレスを使用します。 現在のTODOには、4種類のバッジ(Core Contributor, Translator, Event Attendee, Research Author)の画像デザイン、Ethereum Mainnet ERC-1155コントラクトのデプロイ、バッジコントラクトアドレスの環境変数分離適用、Vercel環境変数の同期が残っています。ライセンスはMITであり、CONTRIBUTING.mdとバグ報告・機能提案のイシュートemplateを提供しています。