Skip to content

Dokumentasi Hour Share

Pengantar

Hour Share adalah alat web lokal untuk berbagi file dan teks antar perangkat dalam satu jaringan Wi-Fi. Terdiri dari runner CLI Node.js ringkas dan server Flask Python yang menyajikan dashboard web. Dengan memindai QR code, perangkat mana pun dapat langsung mengakses dashboard untuk mengunggah, mengunduh, dan berbagi konten — tanpa koneksi internet atau akun.

Fitur

  • Koneksi QR Pindai QR code dari dashboard untuk membukanya di perangkat mana pun dalam Wi-Fi yang sama.
  • Unggah & Unduh File Unggah file hingga 100 MB per file. Unduh dengan satu klik — dilindungi password.
  • Berbagi Teks Tempel teks, cuplikan, atau tautan dan bagikan secara instan melalui panel receive.
  • Perlindungan Password Password bcrypt per bundle dan per grup — aman bahkan di jaringan bersama.
  • Kadaluwarsa Otomatis Semua bundle, grup, dan item-nya otomatis kedaluwarsa setelah 60 menit — tanpa sampah disk.
  • Grup Chat Buat atau bergabung grup dengan nama dan password — bagikan file dan teks secara real-time.

Instalasi

Instal secara global via npm dan jalankan:

# Install globally
npm install -g hourshare

# Start Hour Share
hourshare

Build dari Source

# 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

Teknologi

  • CLI: Node.js (vanilla, no deps)
  • Server: Python 3.10+, Flask 3
  • Frontend: Vanilla HTML/CSS/JS (no build step)
  • Autentikasi: bcrypt password per bundle
  • Penyimpanan: File-based JSON (no DB)
  • Lisensi: MIT

Cara Kerja

Hour Share menjalankan server Flask Python di mesin lokal Anda, menyajikan dashboard web melalui HTTP. CLI Node.js (`hourshare`) meluncurkan server di latar belakang, membuka URL dashboard di browser, dan menampilkan QR code. Perangkat mana pun dalam Wi-Fi yang sama dapat memindai QR code untuk membuka dashboard. File dan teks disimpan dalam file JSON di server dan kedaluwarsa setelah 60 menit. Perlindungan password opsional menggunakan bcrypt untuk menjaga keamanan transfer Anda.