An attempt to contextualize the photography of the Artemis II mission chronologically, in space, and with other media including video and audio from the mission as well as the crew activity schedule. Real-time trajectory visualization, distance from Earth and Moon, and photography metadata.
Live site: ArtemisTimeline.com
The entire site is two HTML files and a data file — no build step, no framework, no dependencies. Media files (photos and audio) are served from Cloudflare R2; only the code and metadata live in this repo.
index.html The viewer — CSS, HTML, and JS in one self-contained file
photos.js All photo/audio metadata (titles, timestamps, camera info)
admin.html Visual editor for photos.js (toggle entries, edit metadata, export)
faq.html Frequently asked questions
Images and audio are hosted on Cloudflare R2 and referenced via MEDIA_BASE at the top of index.html. To run locally with your own copies, set MEDIA_BASE = '' and place files in web/ and audio/ directories.
convert original.jpg -resize 1600x -quality 85 web/filename.jpgweb/ folder in the R2 bucket (via the Cloudflare dashboard or wrangler r2 object put artemistimeline/web/filename.jpg --file=web/filename.jpg).admin.html in your browser and click + Add Photo.photos.js with the exported version and deploy.Every timestamp in the system is Eastern Daylight Time (EDT / UTC-4). If your photo's EXIF data is in a different timezone, you'll need to convert it. The cameras used for this mission were set to at least 6 different timezones (EDT, PDT, HST, CET, UTC+4, UTC), so always cross-reference against known mission events:
The viewer identifies photos by filename patterns:
55182417729_3e6cb18922_o.jpg — Flickr (11-digit ID)9608627.jpg — DVIDS / Navy (7-digit ID)art002e014256~large.jpg — NASA art-seriesKSC-20260401-PH-KLS01_0013.jpg — Kennedy Space CenterNHQ202604100032.jpg — NASA Headquarters photographerig-*.mp4 / yt-*.jpg — Instagram / YouTube embedsOpen admin.html to browse and edit the photo database. You can search, filter by status (enabled/disabled/videos/crew photos), toggle individual entries on and off, and edit all metadata fields. Changes are exported as a new photos.js file.
Claude Code with Opus 4.6. JPL Horizons API for flight data. Flickr API for pulling image descriptions.
The code is released under the MIT License. NASA imagery is generally not subject to U.S. copyright and is made available under NASA's Media Usage Guidelines. U.S. Navy imagery is public domain per DoD Visual Information policy.
JavaScript
57.9%
HTML
42.1%
An attempt to contextualize the photography of the Artemis II mission chronologically, in space, and with other media including video and audio from the mission as well as the crew activity schedule. Real-time trajectory visualization, distance from Earth and Moon, and photography metadata.
Live site: ArtemisTimeline.com
The entire site is two HTML files and a data file — no build step, no framework, no dependencies. Media files (photos and audio) are served from Cloudflare R2; only the code and metadata live in this repo.
index.html The viewer — CSS, HTML, and JS in one self-contained file
photos.js All photo/audio metadata (titles, timestamps, camera info)
admin.html Visual editor for photos.js (toggle entries, edit metadata, export)
faq.html Frequently asked questions
Images and audio are hosted on Cloudflare R2 and referenced via MEDIA_BASE at the top of index.html. To run locally with your own copies, set MEDIA_BASE = '' and place files in web/ and audio/ directories.
convert original.jpg -resize 1600x -quality 85 web/filename.jpgweb/ folder in the R2 bucket (via the Cloudflare dashboard or wrangler r2 object put artemistimeline/web/filename.jpg --file=web/filename.jpg).admin.html in your browser and click + Add Photo.photos.js with the exported version and deploy.Every timestamp in the system is Eastern Daylight Time (EDT / UTC-4). If your photo's EXIF data is in a different timezone, you'll need to convert it. The cameras used for this mission were set to at least 6 different timezones (EDT, PDT, HST, CET, UTC+4, UTC), so always cross-reference against known mission events:
The viewer identifies photos by filename patterns:
55182417729_3e6cb18922_o.jpg — Flickr (11-digit ID)9608627.jpg — DVIDS / Navy (7-digit ID)art002e014256~large.jpg — NASA art-seriesKSC-20260401-PH-KLS01_0013.jpg — Kennedy Space CenterNHQ202604100032.jpg — NASA Headquarters photographerig-*.mp4 / yt-*.jpg — Instagram / YouTube embedsOpen admin.html to browse and edit the photo database. You can search, filter by status (enabled/disabled/videos/crew photos), toggle individual entries on and off, and edit all metadata fields. Changes are exported as a new photos.js file.
Claude Code with Opus 4.6. JPL Horizons API for flight data. Flickr API for pulling image descriptions.
The code is released under the MIT License. NASA imagery is generally not subject to U.S. copyright and is made available under NASA's Media Usage Guidelines. U.S. Navy imagery is public domain per DoD Visual Information policy.
JavaScript
57.9%
HTML
42.1%