Skip to content

pnnl/luna

Repository files navigation

Luna MOTH Client

Luna is the reference MOTH client.

The emphasis here is on making source code that's easy to understand, although we have also made some effort to have it look okay, and be functional enough to be used for an event.

Features

  • Mobile-friendly
  • Programmer-friendly, jsdoc-documented MOTH library
  • Integrated browser-side Python interpreter
  • Multiple built-in scoreboard views
    • Main scoreboard, with optional display of server URL
    • Projector scoreboard, rotating between different views
    • Class scoreboard, to help track individual progress
  • Accessibility features
    • Honors dark/light mode (browser setting)
    • Honors low-motion (browser setting)

Configuration

Edit base.css to modify colors or other layout options.

MOTH client configuration is stored in the client directory of an instance's state. See the Client Configuration Guide for details.

Directory Layout

  • / - Main interface
  • /images - Images and fonts
  • /scripts - ECMAScript Modules
  • /puzzle - App: Puzzle rendering and answer submission
  • /token - App: Token redemption
  • /reports - App: KSA and other user-accessible reports
  • /scoreboard - App: Scoreboard

FAQ

Why didn't you use a framework?

The short answer is because we want maximum portability, and the ability to rapidly adapt to new web technologies.

Feel free to reach out to me for the long answer, if you care.

Will you add a feature I'd like?

Maybe! Ask!

Colophon

The Luna moth is very pretty, and doesn't eat in its adult stage.

Luna is also the name of my neighbor's daughter; this neighbor was also a co-worker who helped me design the fundamental client architecture in use since MOTHv2.


PNNL-SA-221959

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors