Skip to content

Hour Share ドキュメント

概要

Hour Share は、同じWi-Fiネットワーク上のデバイス間でファイルやテキストを共有するためのローカルWebツールです。Node.js CLIランナーとWebダッシュボードを提供するPython Flaskサーバーで構成されています。QRコードをスキャンすることで、任意のデバイスがダッシュボードにアクセスし、コンテンツのアップロード、ダウンロード、共有が行えます — インターネット接続やアカウントは不要です。

機能

  • QR接続 ダッシュボードからQRコードをスキャンして、同じWi-Fi上の任意のデバイスで開きます。
  • ファイルアップロード・ダウンロード 最大100MBのファイルをアップロード。ワンクリックでダウンロード — パスワード保護。
  • テキスト共有 テキスト、スニペット、リンクを貼り付けて、受信パネルから即座に共有。
  • パスワード保護 バンドルとグループごとにbcryptパスワード — 共有ネットワークでも安全。
  • 自動消去 すべてのバンドル、グループ、およびそのアイテムは60分後に自動消去 — ディスクを散らかしません。
  • グループチャット 名前とパスワードでグループを作成または参加 — ファイルとテキストをリアルタイムで共有。

インストール

npm でグローバルインストールして実行:

# Install globally
npm install -g hourshare

# Start Hour Share
hourshare

ソースからビルド

# Clone the repository
git clone https://github.com/Curzyori/hour-share.git
cd hour-share

# Set up Python environment
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

# Run the server directly
python3 server.py

技術仕様

  • CLI: Node.js (vanilla, no deps)
  • サーバー: Python 3.10+, Flask 3
  • フロントエンド: Vanilla HTML/CSS/JS (no build step)
  • 認証: bcrypt password per bundle
  • ストレージ: File-based JSON (no DB)
  • ライセンス: MIT

仕組み

Hour Share は、ローカルマシン上で Python Flask サーバーを実行し、HTTP 経由で Web ダッシュボードを提供します。Node.js CLI(`hourshare`)はサーバーをバックグラウンドで起動し、ブラウザでダッシュボード URL を開き、QR コードを表示します。同じ Wi-Fi 上の任意のデバイスが QR コードをスキャンしてダッシュボードを開くことができます。ファイルとテキストはサーバー上の JSON ファイルに保存され、60 分後に自動消去されます。オプションのパスワード保護は bcrypt を使用して転送を安全に保ちます。