Portal Desa Pondokrejo
Portal resmi Desa Pondokrejo, Sleman, Yogyakarta yang berfungsi sebagai gateway utama untuk menampilkan data dari berbagai website backend menggunakan custom API. Platform digital modern yang menyediakan akses mudah ke layanan desa, berita terkini, dan data kependudukan.
🚀 Fitur Utama
- Design Modern & Responsif - Tampilan profesional yang terinspirasi dari website pemerintahan seperti USA.gov
- Arsitektur MVC - Struktur kode yang terorganisir dengan baik menggunakan pattern MVC
- API Integration - Integrasi dengan WordPress REST API untuk berita dan OpenSID API untuk data penduduk
- Caching System - Sistem cache file-based dengan TTL konfigurabel untuk performa optimal
- SEO Friendly - Meta tags dinamis dan struktur URL yang SEO-optimized
- Hero Background Slider - Carousel background dengan gambar desa yang menarik
- Interactive Components - Menu mobile, search toggle, dan back-to-top functionality
- Data Visualization - Statistik penduduk dan demografis dengan tampilan yang informatif
- Service Catalog - Katalog layanan desa yang terorganisir dengan baik
🛠️ Teknologi
- Backend: PHP 8.4+ dengan strict typing
- Frontend: Tailwind CSS (latest version via CDN)
- JavaScript: Vanilla JS dengan Swiper.js untuk carousel
- Architecture: MVC Pattern dengan custom routing
- Router: Custom PHP Router dengan parameter support
- APIs: WordPress REST API, OpenSID API
- Caching: File-based caching dengan graceful fallbacks
📁 Struktur Project
/
├── index.php # Main Router
├── config/
│ └── app_config.php # Konfigurasi aplikasi
├── controllers/
│ ├── BaseController.php # Base controller
│ ├── HomeController.php # Homepage controller
│ ├── NewsController.php # News controller
│ └── DataController.php # Data controller
├── models/ # Model classes (future)
├── views/
│ ├── layouts/
│ │ ├── main.php # Main layout
│ │ ├── header.php # Header component
│ │ └── footer.php # Footer component
│ └── pages/
│ ├── home.php # Homepage
│ ├── news.php # News listing
│ ├── news_detail.php # News detail
│ ├── data.php # Data visualization
│ ├── services.php # Services page
│ └── contact.php # Contact page
├── services/
│ ├── ApiService.php # Base API service
│ ├── WordPressService.php # WordPress integration
│ └── OpenSIDService.php # OpenSID integration
├── utils/
│ ├── Router.php # Custom router
│ └── Helper.php # Helper functions
├── public/
│ ├── css/
│ ├── js/
│ └── images/
├── cache/ # API cache directory
└── logs/ # Application logs
🎨 Halaman yang Tersedia
- Beranda (
/) - Hero section dengan background slider, layanan unggulan, berita terkini, statistik desa - Berita (
/news) - Daftar berita dengan featured news, filter kategori, dan pencarian - Detail Berita (
/news/{id}) - Halaman detail berita dengan konten lengkap - Data Desa (
/data) - Statistik dan visualisasi data penduduk, demografi, pendidikan, dan pekerjaan - Layanan (
/services) - Katalog layanan desa dengan kategori dan layanan populer - Kontak (
/contact) - Informasi kontak lengkap, jam operasional, dan peta lokasi
⚙️ Instalasi
- Clone atau download project
- Upload ke web server yang mendukung PHP 8.4+
- Konfigurasi file
config/app_config.phpsesuai kebutuhan - Set permissions untuk direktori
cache/danlogs/(755) - Akses website melalui browser
🔧 Konfigurasi
Edit file config/app_config.php untuk mengatur:
- Informasi desa (nama, alamat, kontak)
- URL API WordPress dan OpenSID
- Pengaturan cache
- Social media links
'api' => [
'wordpress_url' => 'https://news.pondokrejo.desa.id/wp-json/wp/v2',
'opensid_url' => 'https://data.pondokrejo.desa.id/api',
'cache_duration' => 3600, // 1 hour
],
🔌 Integrasi API
WordPress REST API
- Mengambil berita dari WordPress REST API v2
- Support untuk kategori, pencarian, dan featured image
- Fallback data dengan mock content jika API tidak tersedia
- Caching dengan TTL 1 jam untuk performa optimal
OpenSID API
- Mengambil data penduduk dan statistik desa real-time
- Data demografi lengkap (usia, jenis kelamin, pendidikan, pekerjaan)
- Informasi luas wilayah dan pembagian administratif
- Fallback system dengan data mock yang komprehensif
🎯 Fitur Unggulan
- Responsive Design - Optimal di semua perangkat dengan mobile-first approach
- Fast Loading - Sistem cache file-based dan optimasi asset loading
- SEO Optimized - Meta tags dinamis dan struktur URL yang SEO-friendly
- Interactive UI - Hero background slider, mobile navigation, smooth scrolling
- Data Visualization - Statistik penduduk dengan tampilan yang informatif
- Security - Input sanitization, XSS prevention, dan strict typing
🚀 Performance
- File-based Caching - Cache API responses dengan MD5 key dan TTL konfigurabel
- Graceful Fallbacks - Sistem fallback ke cached data jika API tidak tersedia
- Optimized Assets - Tailwind CSS via CDN dan custom CSS yang minimal
- Lazy Loading - Images dan components dimuat sesuai kebutuhan
- Efficient Routing - Custom router dengan pattern matching yang cepat
🔒 Keamanan
- Strict Typing - PHP 8.4+ dengan declare(strict_types=1) di seluruh codebase
- Input Sanitization - Helper methods untuk pembersihan data input
- XSS Prevention - Output escaping di semua template
- API Security - Timeout controls dan error handling yang aman
- File Permissions - Proper directory permissions untuk cache dan uploads
📱 Browser Support
- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Edge (latest)
- Mobile browsers
📄 License
MIT License - Project ini dilisensikan di bawah MIT License.
Author: MOVZX (movzx@yahoo.com)
Last Updated: July 11, 2025
Dibuat dengan ❤️ untuk Desa Pondokrejo
Description
Languages
PHP
72.5%
CSS
14.6%
Hack
8.3%
JavaScript
4.6%