API Wilayah Indonesia

Developed and maintain an open-source RESTful API that serves comprehensive Indonesian administrative regions data (provinces, regencies, districts, villages) with demographic information. Features automated data scraping via GitHub Actions, static hosting on GitHub Pages, and has gained significant community adoption with multiple contributors.

Hire Me
Client: Open Source Community
Category: Open Source
Role: Creator & Main Maintainer
Date: December 2024
Technologies:
Node.js Express.js JavaScript GitHub Actions Docker API Development Data Scraping Open Source
GitHub Stars

5+

Community recognition and adoption of the project

API Coverage

100%

Complete coverage of Indonesian administrative regions

Data Updates

Weekly

Automated data refresh frequency via GitHub Actions

Deployment Options

3

GitHub Pages, Node.js server, and Docker deployment support

Project Overview

API Wilayah Indonesia is an open-source project that provides a comprehensive RESTful API for Indonesian administrative regions data, including all provinces, regencies/cities, districts, and villages along with demographic information. What sets this project apart is its automated data maintenance system using GitHub Actions, static hosting approach via GitHub Pages for high availability, and inclusion of population demographics. The project has gained significant traction in the Indonesian developer community and serves millions of API requests.

Project Requirements

  • Create a comprehensive API for Indonesian administrative regions data
  • Implement automated data scraping and updates from official government sources
  • Design scalable architecture that can be hosted on GitHub Pages
  • Build Docker deployment support for custom server hosting
  • Ensure data accuracy and regular updates via automated workflows

The Challenge

The main challenge was creating a sustainable system that could provide accurate, up-to-date Indonesian regional data without requiring expensive server infrastructure. Additionally, I needed to ensure data reliability by implementing automated scraping from official government sources, handle potential bandwidth limitations of GitHub Pages, and design the API to be both accessible as static files and as a dynamic Node.js service for different deployment scenarios.

The Approach & Solution

I developed a comprehensive solution using Node.js and Express.js with multiple deployment options. The system includes automated data scraping scripts that fetch data weekly from official Kemendagri sources via GitHub Actions, generates static JSON files for GitHub Pages hosting, supports dynamic API routing for custom deployments, includes Docker containerization for easy deployment, and implements comprehensive error handling and data validation. The project structure allows both static and dynamic API access patterns.

API Wilayah Indonesia

Let's Work Together on Your Next Project

I am available for freelance projects. Hire me and get your project done.

Let's get in touch
Copyright © 2025 irvan.cc. All Rights Reserved.