In the previous article "Discover Landsat's New Tool: Turning Your Name into Artistic Maps", I introduced NASA's fun application "Your Name In Landsat". Recently, the official website became inaccessible, prompting inquiries from readers about alternatives. After searching without finding a viable solution, I decided to recreate the experience myself.
Access the demo: https://malagis.com/extension/demo/your-name-in-landsat/
Below is a brief overview of the implementation process.
Retrieving Web Archives
This step was necessary because the original "Your Name In Landsat" service was offline during development. Using the method described in "How a Wuhan GIS Company Website Exposed Industry Shortcomings", I employed the Internet Archive’s Wayback Machine (https://web.archive.org/) to locate archived versions of the original site (https://landsat.gsfc.nasa.gov/apps/YourNameInLandsat-main/).
After locating the archived page, I accessed browser developer tools to retrieve and download the core JavaScript file main.js
.
Downloading All Images
Next, I utilized Kiro (https://kiro.dev/) – a newly released AI programming tool by AWS. Similar to Cursor and based on VS Code, Kiro currently offers free access to Claude 4. Taking full advantage of this resource, I prompted Kiro to analyze main.js
and generate a script for downloading all required images.
Kiro efficiently produced Node.js scripts compatible with both browser and Node.js environments.
Executing the Node.js script successfully downloaded all necessary images.
Recreating the Application
I then instructed Kiro to generate code for replicating the website functionality.
It generated HTML and JavaScript files that worked immediately upon execution. However, testing revealed a critical missing feature: displaying geographic coordinates and actual addresses when clicking on Landsat images.
After troubleshooting, I identified incomplete code transplantation. Despite repeated prompt adjustments with Kiro and Cursor, the issue persisted – the models consistently failed to fully implement this requirement.
I subsequently employed Google Gemini API which successfully modified the ~1000 lines of frontend code within one minute.
Post-Implementation Refinements
The aforementioned steps took approximately one hour, but significant additional time was required for manual coding, optimization, and testing. After numerous adjustments, the recreated version is now live on MalAGIS.
While I would typically share source code, I've concluded that specific implementation details matter less than the methodology. The prompt engineering approach described here enables recreation – interested developers can experiment using the techniques outlined.