π Do'a dzikir - Tasbih Online & Dzikir Digital Gratis
Platform web modern untuk membantu umat Muslim dalam menjalankan ibadah sehari-hari dengan fitur tasbih online gratis, dzikir digital, dan jadwal sholat Indonesia yang akurat.
π Fitur Utama
1. Tasbih Online - Counter Dzikir Digital β¨
- π― Counter dzikir otomatis untuk Subhanallah, Alhamdulillah, Allahu Akbar
- π Target dzikir yang bisa disesuaikan (33, 99, 100, 1000, custom)
- π Custom dzikir - tambahkan dzikir sendiri
- π History dan tracking dzikir harian
- π Sound feedback & vibration
- πΎ Auto-save progress di browser
- π Dark mode support
2. Jadwal Sholat Indonesia
- π Deteksi lokasi otomatis menggunakan geolokasi browser
- πΊοΈ Pencarian kota manual berdasarkan provinsi di Indonesia
- β° Waktu sholat akurat untuk seluruh Indonesia (Subuh, Dzuhur, Ashar, Maghrib, Isya)
- π± Tampilan responsif untuk semua perangkat
- π Notifikasi waktu sholat
3. Pencarian Lokasi
- π Pencarian real-time provinsi dan kota
- π― Sistem pencarian kota terdekat berdasarkan koordinat
- π Data lengkap untuk seluruh provinsi dan kota di Indonesia
4. SEO Optimization π
- β Structured data (JSON-LD) untuk rich snippets
- β Meta tags lengkap untuk SEO
- β Open Graph & Twitter Cards
- β Sitemap.xml otomatis
- β Robots.txt optimization
- β PWA ready dengan manifest.json
- β Mobile-first & responsive design
π― Keywords yang Ditarget
Aplikasi ini dioptimasi untuk muncul di pencarian Google dengan keywords:
- Tasbih online - Counter tasbih digital gratis
- Dzikir online - Aplikasi dzikir digital
- Jadwal sholat - Waktu sholat Indonesia hari ini
- Counter tasbih - Tasbih digital otomatis
- Aplikasi dzikir - Tools Muslim online
π SEO Features
- π Schema Markup: Structured data untuk better search results
- π± PWA: Progressive Web App dengan offline capability
- β‘ Fast Loading: Optimized dengan Next.js 16
- π¨ Rich Snippets: Enhanced search results
- π Multi-language: Indonesian language optimization
- π Analytics Ready: Google Analytics & Search Console compatible
π Teknologi yang Digunakan
- Framework: Next.js 16 - React framework untuk production
- Language: TypeScript - Type-safe JavaScript
- Styling: Tailwind CSS v4 - Utility-first CSS framework
- Icons: Lucide React - Beautiful & consistent icons
- Runtime: React 19 dengan Server Components
π Prasyarat
Pastikan Anda telah menginstal:
- Node.js versi 20.x atau lebih baru
- npm atau yarn atau pnpm
π οΈ Instalasi
- Clone repository
git clone <repository-url>
cd do-Dzikir
- Install dependencies
npm install
# atau
yarn install
# atau
pnpm install
- Jalankan development server
npm run dev
# atau
yarn dev
# atau
pnpm dev
- Buka browser Akses http://localhost:3000 untuk melihat aplikasi.
π Struktur Proyek
do-Dzikir/
βββ app/ # Next.js App Router
β βββ api/ # API Routes
β β βββ cities/ # Endpoint data kota
β β βββ prayer/ # Endpoint jadwal sholat
β β βββ province/ # Endpoint data provinsi
β βββ jadwal-sholat/ # Halaman jadwal sholat
β β βββ page.tsx # List provinsi & kota
β β βββ [latitude]/ # Dynamic route berdasarkan koordinat
β β βββ [longitude]/
β β βββ page.tsx # Detail jadwal sholat
β βββ tasbih/ # Halaman tasbih (coming soon)
β βββ globals.css # Global styles
β βββ layout.tsx # Root layout
β βββ page.tsx # Homepage
βββ components/ # React Components
β βββ CTASection.tsx # Call to Action section
β βββ FeatureCard.tsx # Feature card component
β βββ Features.tsx # Features section
β βββ Footer.tsx # Footer component
β βββ Header.tsx # Header/Navbar component
β βββ Hero.tsx # Hero section dengan jadwal sholat
β βββ Sidebar.tsx # Sidebar component
βββ contexts/ # React Contexts
βββ public/ # Static assets
βββ eslint.config.mjs # ESLint configuration
βββ next.config.ts # Next.js configuration
βββ postcss.config.mjs # PostCSS configuration
βββ tailwind.config.ts # Tailwind CSS configuration
βββ tsconfig.json # TypeScript configuration
π― API Endpoints
1. Get All Provinces
GET /api/province
Response: Array of provinces with cities
2. Get All Cities
GET /api/cities
Response: Array of all cities with coordinates
3. Get Prayer Times
GET /api/prayer?latitude={lat}&longitude={lng}
Parameters:
latitude: Latitude koordinatlongitude: Longitude koordinat
Response: Prayer times data for the location
π§ Scripts yang Tersedia
# Development mode
npm run dev
# Build untuk production
npm run build
# Menjalankan production build
npm run start
# Linting
npm run lint
π Fitur Utama Halaman
Homepage (/)
- Hero section dengan jadwal sholat otomatis berdasarkan lokasi
- Features section menampilkan fitur-fitur utama
- CTA (Call to Action) section
Jadwal Sholat (/jadwal-sholat)
- List semua provinsi dan kota di Indonesia
- Search functionality untuk mencari provinsi/kota
- Link ke detail jadwal sholat per kota
Detail Jadwal Sholat (/jadwal-sholat/[latitude]/[longitude])
- Jadwal sholat detail berdasarkan koordinat
- Informasi nama kota dan provinsi
- Waktu sholat lengkap (Imsak, Subuh, Terbit, Dhuha, Dzuhur, Ashar, Maghrib, Isya)
π¨ Fitur Teknis
Client-Side Features
- β Geolocation API untuk deteksi lokasi otomatis
- β Haversine formula untuk menghitung jarak terdekat
- β Real-time search dan filtering
- β Loading states dan error handling
- β Responsive design untuk semua ukuran layar
Performance
- β Server Components untuk optimal loading
- β Client Components hanya untuk interactive parts
- β Image optimization dengan Next.js Image
- β Code splitting otomatis
π Environment Variables
Saat ini aplikasi menggunakan API eksternal. Jika Anda perlu mengonfigurasi API endpoint, tambahkan di .env.local:
NEXT_PUBLIC_API_URL=your_api_url_here
π Deployment
Vercel (Recommended)
- Push code ke GitHub
- Import project di Vercel
- Deploy otomatis akan berjalan
Manual Build
npm run build
npm run start
π€ Kontribusi
Kontribusi sangat diterima! Silakan:
- Fork repository
- Buat branch fitur (
git checkout -b feature/AmazingFeature) - Commit perubahan (
git commit -m 'Add some AmazingFeature') - Push ke branch (
git push origin feature/AmazingFeature) - Buat Pull Request
π License
Project ini dibuat untuk keperluan pembelajaran dan portfolio.
π¨βπ» Author
Dibuat dengan β€οΈ oleh Developer Muslim
π Support
Jika Anda memiliki pertanyaan atau masalah, silakan buat issue di repository ini.
Note: Proyek ini masih dalam tahap pengembangan aktif. Beberapa fitur mungkin belum sepenuhnya terimplementasi.
ποΈ Roadmap
- [x] Jadwal Sholat dengan geolokasi
- [x] Pencarian kota dan provinsi
- [ ] Tasbih Digital
- [ ] Al-Quran Digital
- [ ] Notifikasi waktu sholat
- [ ] Arah kiblat
- [ ] Doa-doa harian
- [ ] Mode gelap/terang
π Acknowledgments
- API jadwal sholat dari penyedia layanan eksternal
- Icons dari Lucide Icons
- UI Framework Tailwind CSS