Sebuah aplikasi command-line untuk menampilkan jadwal waktu sholat dengan berbagai fitur interaktif dan geocoding otomatis.
- 🌍 Smart Location Input: Setup dengan alamat atau koordinat
- 🔍 Geocoding Otomatis: Konversi alamat ke koordinat secara otomatis
- 📍 Location Names: Tampilan nama lokasi yang mudah dibaca
- ⚡ Setup Cepat: Satu perintah untuk konfigurasi lokasi
- 🕰️ Countdown Real-time: Countdown ke waktu sholat berikutnya
- 📺 Live Update: Mode watch dengan update otomatis setiap menit
- 🔔 Notifikasi: Opsi notifikasi saat masuk waktu sholat
- 🎨 UI Cantik: Interface terminal berwarna dengan emoji
- ⚙️ Konfigurasi Fleksibel: 8 metode perhitungan (MWL, ISNA, Egypt, Makkah, Karachi, Tehran, Kemenag, JAKIM)
- Clone repository ini:
git clone https://github.com/herbras/BelGolang.git
cd BelGolang
- Build aplikasi:
go build -o salat
- (Opsional) Install ke sistem:
go install
# Setup dengan nama kota/alamat
salat setup "Jakarta, Indonesia"
salat setup "Bandung, Indonesia"
salat setup "Monas Jakarta"
# Pilih API geocoding
salat setup "Surabaya" --api photon
salat setup "Medan" --api nominatim # default
# Format: "latitude,longitude"
salat setup -- "-6.2,106.8" # Jakarta
salat setup -- "-6.9,107.6" # Bandung
salat setup -- "-7.25,112.75" # Surabaya
salat setup
salat show
Contoh output:
🕌 Jadwal Sholat - Friday, 30 May 2025
📍 Kota Bandung, Jawa Barat, Jawa, Indonesia (-6.921846, 107.607083) • Kemenag
WAKTU JAM STATUS
-------------------------------
🌙 Imsak 04:27 ✓
🌅 Subuh 04:37 ✓
☀️ Dzuhur 11:52 ✓
🌤️ Ashar 15:14
🌇 Maghrib 17:45
✨ Isya 18:59
-------------------------------
⏰ Sholat berikutnya: 🌤️ Ashar dalam 1h 22m
salat next # atau salat n
salat now
salat watch # atau salat w
# Dengan notifikasi
salat watch --notify
salat config show
# Dengan alamat
salat config set location "Yogyakarta, Indonesia"
# Dengan koordinat
salat config set location -- "-7.8,110.4"
salat config set timezone Asia/Jakarta
salat config set method Kemenag
salat config set geocoding_api photon
-
timezone
- Zona waktu (contoh: Asia/Jakarta) -
location
- Lokasi (alamat atau koordinat) -
latitude
- Garis lintang -
longitude
- Garis bujur -
method
- Metode perhitungan (MWL, ISNA, Egypt, Makkah, Karachi, Tehran, Kemenag, JAKIM) -
geocoding_api
- API geocoding (nominatim, photon)
Aplikasi ini mendukung dua penyedia geocoding:
- API gratis dari OpenStreetMap
- Rate limit: 1 request/second
- Coverage: Global
- API gratis dari Komoot
- Lebih cepat dari Nominatim
- Coverage: Global
- Usage:
--api photon
salat show --compact
salat show --theme dark
salat show --theme light # default
go run main.go setup "Jakarta"
go run main.go show
go build -ldflags="-s -w" -o salat
goreleaser build --snapshot --clean
Aplikasi menggunakan geocoding API eksternal untuk konversi alamat:
- Forward Geocoding: Alamat → Koordinat + Nama Lokasi
- Reverse Geocoding: Koordinat → Nama Lokasi
- One-time Only: API dipanggil sekali saat setup, hasil disimpan di config
- Offline-first: Setelah setup, tidak perlu internet untuk perhitungan sholat
Lihat CONTRIBUTING.md untuk panduan kontribusi.
MIT License - lihat file LICENSE untuk detail.
- Repository: https://github.com/herbras/BelGolang
- Issues: https://github.com/herbras/BelGolang/issues
- NPM Package: salat-cli
Version: 1.6.0 • Last Updated: January 2025