Skip to content

tasopen/omnimock

Repository files navigation

学習・模擬テストアプリ OmniMock

モダンなデザインと高度な学習機能を備えた、Webベースのクイズ・学習アプリです。 G検定などの試験対策に最適化されており、数式の表示や複数選択問題など、実戦的な機能を備えています。

✨ 主な機能

  • 🔢 多様な出題形式: 単一選択問題に加え、複数選択問題(部分点なし)をサポート。
  • 🧪 MathJax 統合: LaTeX形式の美しい数式表示に対応(インライン・ブロック両対応)。
  • 📊 自動インデックス生成: public/data/sets/ にJSONを置くだけでメニューに反映。
  • ⌨️ キーボード操作: 数字キー(1-6)での選択、Spaceでの確定、Enterでの次進、Escでの中断に対応。
  • ⏱️ 比例制限時間: カテゴリ学習時、問題数に応じて制限時間を自動調整。
  • 🌙 モダンUI: 暗色系を基調とした、集中力を高めるプレミアムなデザイン。
  • 📈 履歴管理: 直近10回のスコアをローカルに保存し、成長を確認可能。

🚀 セットアップと実行

システム要件

  • Node.js (v16.0以上推奨)

インストール

git clone <repository-url>
cd omnimock
npm install

開発用サーバーの起動

npm run dev

※ 起動時に自動で問題集のインデックスが更新されます。

ビルド(公開用ファイルの生成)

npm run build

🌍 デプロイ (Firebase Hosting)

Firebase Hosting を使用して公開する場合:

  1. npm run builddist を生成
  2. firebase deploy

詳細は .firebaserc でプロジェクトIDを確認してください。

📂 ディレクトリ構成

  • src/components/: UIコンポーネント
  • public/data/sets/: 問題集JSONファイルの格納場所
  • scripts/: 動的インデックス生成スクリプト
  • spec.md: 問題データ作成の詳細仕様書

📄 ライセンス

このプロジェクトは MITライセンス の下で公開されています。 詳細は LICENSE ファイル(または本項)を参照してください。

⚠️ 免責事項

  • 本アプリは学習をサポートするためのツールであり、特定の試験の合格を保証するものではありません。
  • 収録されている問題や解説の正確性には細心の注意を払っておりますが、情報の保証はいたしかねます。
  • 本アプリの使用によって生じた直接的・間接的な損害について、作成者は一切の責任を負いません。
  • 公式の試験情報については、必ず主催団体の公式サイトを確認してください。

About

モダンなデザインと高度な学習機能を備えた、Webベースのクイズ・学習アプリ。数式の表示,複数選択問題など、実戦的な機能を備えています。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors