Skip to main content
← Back to projects

PBL Semester 4 — Marine Cadastre WebGIS

Role: Assistant Developer & Deployment SpecialistTech: CodeIgniter 4, Leaflet.js, Bootstrap 5

The Problem

A Geomatics Engineering student needed to build and deploy a WebGIS presentation website for their PBL mapping project under a tight deadline. Being completely self-taught in web development for only a month—relying solely on a library book and AI—they managed to construct a local prototype in CodeIgniter 4. However, the codebase was extremely raw: directory structures were messy, variable usage was highly inconsistent, and file naming conventions were outdated (using legacy 'v_' prefixes). Furthermore, they had purchased a domain but had no knowledge of deployment procedures, only knowing how to run local builds.

The Solution

Stepped in as an assistant developer to refine and deploy the project. Cleaned up the structural organization, standardizing variable usages and refactoring folder layouts. Facilitated the deployment phase by configuring a custom PHP script (build_static.php) to fetch and export the local CodeIgniter pages into pure static HTML files, uploading the repository to GitHub, and integrating it with Cloudflare Pages to map their custom domain (marinecadastre.id) successfully.

Challenges

  • Refactoring a messy, non-standard codebase with legacy PHP naming conventions ('v_') into a clean structure without breaking existing functionality under tight deadline pressure.
  • Debugging path resolution errors when translating dynamic local CodeIgniter 4 routes (e.g., http://localhost/pbl/public) into clean, relative static HTML links.
  • Configuring static assets (GeoJSON, Leaflet maps, custom styles) to load reliably on a serverless CDN environment without a live PHP interpreter.

Impact

Successfully launched marinecadastre.id on Cloudflare Pages ahead of the academic deadline. The site operates with 100% uptime, zero hosting costs, and fast page response times, ensuring a highly polished final PBL presentation that exceeded the initial raw prototype.

Information about my background is available on the about page, technical competencies on the skill page, work documentation on the project page, organizational experience on the activity page, thoughts on the blog page, and contact information on the contact page. Back to the home page.