🌍 International 12-Language Support | A sophisticated PWA (Progressive Web App) for scientific and systematic evaluation of information reliability with full internationalization
The Practical Fact-Check Checklist is an enterprise-grade progressive web application for scientifically and systematically evaluating the reliability of online information. In an era where misinformation and misleading content proliferate, this application supports the improvement of information literacy across 12 languages with full internationalization support.
実用的事実確認チェックシートは、インターネット上の情報の信頼性を科学的・体系的に評価するための企業レベル高度PWAです。偽情報やミスリーディングな情報が氾濫する現代において、12言語完全対応の国際化機能で情報リテラシーの向上を支援します。
[!IMPORTANT] This "Practical Fact-Check Checklist" project is created through collaboration between a human engineer (@shuji-bonji) and AI (Claude). この「実用的事実確認チェックシート」プロジェクト(Github)は、人間のエンジニア(@shuji-bonji)と生成AI(Claude)との協働によって作成されています。
Language | Code | Script | Status |
---|---|---|---|
日本語 (Japanese) | ja | CJK | ✅ Complete |
English | en | Latin | ✅ Complete |
Français (French) | fr | Latin | ✅ Complete |
繁體中文 (Traditional Chinese) | zh-TW | CJK | ✅ Complete |
Español (Spanish) | es | Latin | ✅ Complete |
Português (Portuguese) | pt | Latin | ✅ Complete |
हिन्दी (Hindi) | hi | Devanagari | ✅ Complete |
Deutsch (German) | de | Latin | ✅ Complete |
Italiano (Italian) | it | Latin | ✅ Complete |
العربية (Arabic) | ar | Arabic | ✅ Complete (RTL) |
Bahasa Indonesia | id | Latin | ✅ Complete |
한국어 (Korean) | ko | CJK | ✅ Complete |
👉 https://fact-checklist.vercel.app/
# リポジトリをクローン
git clone https://github.com/shuji-bonji/fact-checklist.git
cd fact-checklist
# 依存関係をインストール
npm install
# 開発サーバーを起動
npm run dev
# ブラウザで http://localhost:5173 を開く
チェック項目 | 説明 |
---|---|
権威ある情報源からの発表 | 政府機関、学術機関、専門機関、査読済み論文、信頼できるメディアなど |
一次情報の確認 | 又聞き・伝聞ではなく、直接的な情報源からの発信 |
複数の独立した情報源 | 同じ内容が複数の独立した信頼できる情報源で確認できる |
匿名・出典不明でない | 情報の発信者や責任者が明確に示されている |
扇動的・煽情的表現の少なさ | 感情に訴える表現ではなく、客観的な表現で記述されている |
論理的一貫性 | 主張と根拠の間に論理的なつながりがあり、矛盾がない |
チェック項目 | 説明 |
---|---|
情報の新しさ | 公開日が明記され、内容に適した新しさを保っている |
更新・訂正の履歴 | 必要に応じて内容が更新され、訂正が透明に行われている |
適切な専門知識 | 作成者が該当分野の十分な知識・経験を持っている |
十分な詳細と根拠 | 結論に至る過程や根拠が適切に説明されている |
適切な引用・参照 | 重要な主張に対して信頼できる情報源が示されている |
引用元の確認可能性 | 引用された情報源に実際にアクセスして確認できる |
チェック項目 | 説明 |
---|---|
他情報源との照合 | 独立した複数の情報源で同様の内容が確認できる |
ファクトチェック組織の検証 | 信頼できるファクトチェック機関による検証がある |
検証可能なデータ | 主張を支持するデータが客観的に確認できる |
手法・方法論の妥当性 | 研究や調査の方法論が適切で再現可能 |
チェック項目 | 説明 |
---|---|
利害関係の開示 | 金銭的・政治的・個人的な利害関係が適切に開示されている |
バランスの取れた視点 | 異なる立場や反対意見も考慮されている |
十分な背景情報 | 情報を理解するのに必要な背景や文脈が提供されている |
適用範囲の明確化 | 情報の適用可能な範囲や限界が明確に示されている |
$state
and
$derived
?debug=true
/
URLパラメータ?debug=true
で本番環境でもログ表示fact-checklist/
├── src/
│ ├── lib/
│ │ ├── components/ # Svelte components / Svelteコンポーネント
│ │ │ ├── CheckSection.svelte # Category sections / カテゴリセクション
│ │ │ ├── CheckItem.svelte # Check items / チェック項目
│ │ │ ├── ScoreDisplay.svelte # Score display / スコア表示
│ │ │ ├── ExportModal.svelte # Advanced export / 高度エクスポート機能
│ │ │ ├── HistorySidebar.svelte # History sidebar / 履歴サイドバー
│ │ │ └── LanguageSwitcher.svelte # Language switcher / 言語切り替え
│ │ ├── stores/ # State management / 状態管理
│ │ │ ├── checklistStore.svelte.ts
│ │ │ └── platformStore.svelte.ts
│ │ ├── i18n/ # Internationalization / 国際化
│ │ │ ├── index.ts # i18n initialization / i18n初期化
│ │ │ ├── types.ts # TypeScript types / TypeScript型定義
│ │ │ ├── store.svelte.ts # Language store / 言語ストア
│ │ │ ├── fonts.ts # International fonts / 国際化フォント
│ │ │ └── translations/ # Translation files / 翻訳ファイル
│ │ │ ├── ja.ts # Japanese / 日本語
│ │ │ ├── en.ts # English / 英語
│ │ │ ├── fr.ts # French / フランス語
│ │ │ ├── zh-TW.ts # Traditional Chinese / 繁体中国語
│ │ │ ├── es.ts # Spanish / スペイン語
│ │ │ ├── pt.ts # Portuguese / ポルトガル語
│ │ │ ├── hi.ts # Hindi / ヒンディー語
│ │ │ ├── de.ts # German / ドイツ語
│ │ │ ├── it.ts # Italian / イタリア語
│ │ │ ├── ar.ts # Arabic / アラビア語 (RTL)
│ │ │ ├── id.ts # Indonesian / インドネシア語
│ │ │ └── ko.ts # Korean / 韓国語
│ │ ├── utils/ # Utilities / ユーティリティ
│ │ │ ├── simplePDFGenerator.ts # Pixel-perfect PDF (Default)
│ │ │ ├── textBasedPDFGenerator.ts# Text-based PDF with fonts
│ │ │ ├── pwaAwarePDFExporter.ts # PWA-aware PDF export
│ │ │ ├── indexedDBStorage.ts # Data persistence
│ │ │ └── fontToBase64.ts # Font conversion utility
│ │ ├── types/ # TypeScript type definitions
│ │ │ └── checklist.ts
│ │ └── data/ # Checklist data / チェックリストデータ
│ │ └── checklist-items.ts
│ ├── routes/ # SvelteKit routing / SvelteKitルーティング
│ │ ├── +layout.svelte # Common layout / 共通レイアウト
│ │ ├── +layout.server.ts # SSR layout logic / SSRレイアウトロジック
│ │ ├── +layout.ts # Layout configuration / レイアウト設定
│ │ ├── +page.svelte # Main page / メインページ
│ │ ├── intro/ # Introduction page / 紹介ページ
│ │ │ ├── +page.svelte # Intro page component / 紹介ページコンポーネント
│ │ │ └── +page.server.ts # Intro page SSR / 紹介ページSSR
│ │ ├── about/ # About page / アプリについて
│ │ ├── help/ # Help page / ヘルプ・使い方
│ │ ├── privacy/ # Privacy policy / プライバシーポリシー
│ │ ├── api/ # API endpoints / APIエンドポイント
│ │ │ └── debug-meta/ # Meta tag debugging / メタタグデバッグ
│ │ └── checklist/[id]/ # Results page / 結果表示ページ
│ ├── app.html # HTML template / HTMLテンプレート
│ └── service-worker.js # Service worker / サービスワーカー
├── static/ # Static files / 静的ファイル
│ ├── fonts/ # International fonts / 国際化フォント
│ │ ├── NotoSansJP-Regular.ttf # Japanese CJK
│ │ ├── NotoSansJP-Bold.ttf # Japanese CJK Bold
│ │ ├── Roboto-Regular.ttf # Latin script
│ │ ├── NotoSansCJK-Regular.ttf # CJK languages
│ │ ├── NotoSansDevanagari-Regular.ttf # Hindi
│ │ └── NotoSansArabic-Regular.ttf # Arabic (RTL)
│ └── icons/ # PWA icons / PWAアイコン
└── docs/ # Documentation / ドキュメント
# Test different languages via curl
curl -H "Accept-Language: ja-JP,ja;q=0.9" https://fact-checklist.vercel.app/
curl -H "Accept-Language: en-US,en;q=0.9" https://fact-checklist.vercel.app/
curl -H "Accept-Language: fr-FR,fr;q=0.9" https://fact-checklist.vercel.app/
curl -H "Accept-Language: zh-TW,zh;q=0.9" https://fact-checklist.vercel.app/
curl -H "Accept-Language: ar-SA,ar;q=0.9" https://fact-checklist.vercel.app/
# Debug meta tag generation
curl "https://fact-checklist.vercel.app/api/debug-meta?path=/intro"
The application automatically detects browser language preferences and serves appropriate meta tags for:
# 依存関係インストール
npm install
# 開発サーバー起動
npm run dev
# 型チェック
npm run check
# Lint & フォーマット
npm run lint
npm run format
# ビルド
npm run build
# プレビュー
npm run preview
# 開発
npm run dev # 開発サーバー起動
npm run check # TypeScript型チェック
npm run check:watch # 型チェック(監視モード)
# コード品質
npm run lint # ESLintチェック
npm run lint:fix # ESLint自動修正
npm run format # Prettierフォーマット
# ビルド・デプロイ
npm run build # 本番ビルド
npm run preview # ビルド結果プレビュー
npm run preview:prod # 本番環境プレビュー
# パフォーマンス
npm run lighthouse # Lighthouse監査
npm run lighthouse:ci # CI用Lighthouse
# URLパラメータで有効化
https://example.com?debug=true
# ブラウザコンソールで有効化
enableDebugMode()
# デバッグモード無効化
disableDebugMode()
デバッグモードの状態はlocalStorage
に保存されます。
[!NOTE] エクスポート機能について: 現在、🔥 フォント信頼性重視モードは一時的に非表示となっています。🎨 ピクセルパーフェクト(デフォルト)と 🔤 テキストベースモードの2つが利用可能です。
git checkout -b feature/amazing-feature
)git commit -m 'Add some amazing feature'
)git push origin feature/amazing-feature
)We welcome contributions to improve translations for all 12 supported languages:
Please report bugs or feature requests at Issues.
バグ報告や機能要望は Issues でお願いします。
このプロジェクトは MIT License の下で公開されています。
📋 Scientific Information Reliability Assessment / 情報の信頼性を、科学的に。
🌍 Now Available in 12 Languages / 12言語対応
🚀 Try It Now / 今すぐ使ってみる | 📖 Documentation / ドキュメント | 🤝 Contributing / コントリビューション