Moonlight
Moonlight is an Android and Wear OS app that lights your screen with the moon.
It works out where the moon is in your sky right now (its phase, how high it sits above the horizon, how much of it is lit)
and turns that into a slow wash of colour: cool blue at the new moon, warming to gold at the full moon,
deeper and more muted when the moon is below the horizon.
The idea began with the artist Kelly Andres, a co-resident during the MARIN Residency where I made
Sonic Drift.
The moon calculations come from the open source SunCalc library.
How it works
The app asks for your approximate location, which is all it needs to know where the moon is from where you stand. Phase sets the hue, altitude sets how rich the colour is, and the illuminated fraction sets how bright and how opaque it is. A Data screen shows the numbers behind the colour: altitude, distance, and how much of the moon is lit. The same mapping drives both the phone app and the watch app, and the app is available in English and Spanish.
Where it is now
Version 0.6 is the current release, a native Android app written in Kotlin with a Wear OS companion. A home screen widget and a live wallpaper are being built next. You can get it on Google Play. Moonlight is open source under the Apache 2.0 license, so you can also read the code or report a bug on GitHub.
Where it came from
Moonlight started in 2015 as an experiment: an iOS and Android prototype built with AngularJS and PhoneGap, to learn those tools. It drew the glow on an HTML5 canvas and was never released. You can see that first version in the video below. The current app is a ground-up rewrite in native Android, and it no longer targets iOS.
moonlight (the 2015 prototype) from Jesse Scott on Vimeo.
Questions or problems? Email me at 'js' at this domain. If you'd like to support the project, you can buy me a coffee.
Google Play and the Google Play logo are trademarks of Google LLC.
