Home-gallery.org adalah galeri web open-source yang diselenggarakan sendiri untuk menelusuri foto dan video pribadi yang menampilkan penandaan, ramah seluler, dan gambar bertenaga AI dan penemuan wajah. Cobalah galeri demo atau nikmati gambar makanannya!
Catatan: Perangkat lunak ini adalah proyek PET/waktu luang pribadi tanpa jaminan. Ajukan pertanyaan tentang gitter.im atau perselisihan.
Apakah Anda suka homegallery? Apakah itu menyelesaikan masalah media Anda? Apakah Anda ingin membantu? Harap baca pedoman yang berkontribusi dan mendukung proyek ini melalui dukungan keuangan yang berulang untuk patreon.com/xemle saya atau dukungan satu kali untuk akun paypal.me/xemle saya. Terima kasih sebelumnya.
Lisensi MIT
Langkah -langkah berikut perlu dilakukan untuk menggunakan Homegallery
~/Pictures curl -sL https://dl.home-gallery.org/dist/latest/home-gallery-latest-linux-x64 -o gallery
chmod 755 gallery
./gallery init --source ~/Pictures
./gallery run server
dan Buka LocalHost: 3000 di browser Anda. Jalankan ./gallery -h untuk bantuan lebih lanjut dari CLI.
Lihat dl.home-gallery.org/dist untuk binari lebih lanjut. Misalnya. Binari terbaru untuk Linux, Mac atau Windows.
gallery.config.yml konfigurasi.config.yml dapat ditemukan di direktori saat ini untuk fine tuning. Lihat bagian Instal dalam dokumentasi untuk informasi lebih lanjut.
mkdir -p data
alias gallery="docker run -ti --rm
-v $(pwd)/data:/data
-v $HOME/Pictures:/data/Pictures
-u $(id -u):$(id -g)
-p 3000:3000 xemle/home-gallery"
gallery init --source /data/Pictures
gallery run server
dan Buka LocalHost: 3000 di browser Anda. Jalankan gallery -h untuk bantuan lebih lanjut dari CLI.
Konfigurasi galeri dapat ditemukan di ./data/config/gallery.config.yml untuk fine tuning.
Ingin menggunakan Docker Compose? Lihat bagian Instal dalam dokumentasi untuk informasi lebih lanjut.
Lihat docs.home-gallery.org untuk dokumentasi umum.
"Database" lengkap dimuat ke dalam browser. Media 100.000 saya sekitar 100 MB JSON dan JSON terkompresi 12 MB. Kinerja cukup bagus di perangkat seluler saat ini. Seorang pengguna melaporkan pengaturan yang berhasil dengan lebih dari 400.000 file media. Umpan balik lebih lanjut diterima.
Homegallery memiliki binari prebuilt untuk Linux, MacOS dan Windows. Opsi unduhan lebih lanjut dapat ditemukan di sini.
Lihat bagian Instalasi untuk Penggunaan.
Tujuan dari Homegallery adalah untuk menggunakan serial umum yang lebih sedikit karena data gambar pribadi yang sensitif. Ia mencoba menggunakan layanan yang dapat digunakan lokal. Namun pengaturan membutuhkan pengetahuan teknis dan pemeliharaan teknis. Layanan berikut disebut:
Untuk pencarian geo reverse (koordinat geo untuk addess), homegallery menanyakan layanan nominatim dari OpenStreetMap. Hanya koordinat geo yang ditransmisikan.
Untuk pencarian gambar terbalik (pencarian gambar serupa), deteksi objek dan recogintion wajah, Homegallery menggunakan API publiknya sendiri di api.home-gallery.org . API publik ini mendukung perangkat bertenaga rendah seperti SOC Raspberry Pi dan semua gambar pratinjau dikirim ke API publik ini secara default. Tidak ada gambar atau data privasi yang disimpan.
API dapat dikonfigurasi dan dijalankan juga secara lokal atau sebagai wadah Docker. Lihat bagian Instalasi untuk Penggunaan.
HomeGallery berjalan di nodeJs runtime JavaScript yang didukung oleh berbagai platform seperti Linux (juga Raspberry PIS), Mac dan Windows.
Untuk sebagian besar kasus lingkungan yang disesuaikan harus cukup
# Clone or download the repo from GitHub
git clone https://github.com/xemle/home-gallery.git
cd home-gallery
# Install required packages
npm install
# Build required modules
npm run build
Dalam beberapa kasus cornor, Anda mungkin juga memerlukan alat pembuatan penting untuk menyusun binding perpustakaan.
HomeGallery menggunakan ruang kerja NPM dengan paket multi. Skrip NPM umum clean , build , test .
Untuk menjalankan hanya sebagian paket, Anda dapat menggunakan fitur filter PNPM, misalnya Build Only Modul export-static dan database :
npx pnpm -r --filter './*/{export-static,database}' build
Jalankan tes unit dari paket tertentu (melalui PNPM)
npx pnpm -r --filter './*/{query,events}' test
Jalankan tes E2E tertentu (via gauge)
git clone https://github.com/xemle/home-gallery-e2e-data.git data
npm run test:e2e -- --tags dev
home-gallery-e2e-data berisi file uji menggunakan GIT LFS.
Data output tes E2E disimpan di /tmp/gallery-e2e direktori. Test Run terbaru disimpulkan ke dalam direktori latest-e2e-test dalam direktori kerja Homegallery. Periksa cli.log dan e2e.log (format ndjson) di setiap direktori tes.
Buat bundel biner lokal dari cabang fitur
node scripts/bundle.js --version=1.3 --snapshot=-feature-test --filter=linux-x64 --no-before --no-run
Buat bundel asli lokal yang tidak termasuk binari melalui NPM seperti Sharp, FFMPEG dan FFProbe. Ini harus berisi hanya kode JS yang harus dijalankan di mana -mana. Dibutuhkan binari eksternal vipthumbnail, ffmpeg dan ffprobe di lingkungan PATH untuk bekerja dengan baik.
node scripts/bundle.js --version=1.3 --snapshot=-feature-test --filter=linux-native --no-before --no-run
Untuk mengatur ulang keadaan pengembangan saat ini dan mulai segar pada perilaku kesalahan yang sangat aneh, Anda mungkin menjalankan:
rm -rf package-lock.json node_modules e2e/node_modules packages/*/node_modules
npm install && npm run clean && npm run build