Luna is a theme trying to recreate the atmosphere of the game Project SEKAI: Colorful Stage feat. Hatsune Miku on the open source capture-the-flag hosting platform CTFd. The theme was first used in the Project SEKAI CTF contest 2022.

Features

  • Based on CTFd’s core-beta theme, using Vite.js, SCSS, and Alpine.js.
  • Custom title screen and home screen.
  • The most distinct CTFd open source theme((As of Sept 2022, individual research on GitHub.)), fully redesigned everything.
  • All graphic elements used are vector or CSS based.
  • Team and user solve timeline is scaled to solve time.
  • Teams and users list include a gravatar profile picture based on their email on registration.
  • Responsive design that respects to mobile browsers’ dynamic viewport units.
  • Canvas-based animated background.
  • Challenges sorting and filtering can be accessed by users.
  • Challenges are specially highlighted if you are the first solver.
  • Custom challenge category and difficulty.
  • Removed Affiliation, Website, and Country attributes of users and teams.
  • Number of solves are listed on ranking page.
  • Your own team and user account is always highlighted in lists.
  • User score, ranking and countdown is visible across multiple pages.
  • All date/time display is in the format of d MMM yyyy, HH:mm:ss in 24-hours and local timezone to avoid confusion.
  • Screen reader tested on the challenge page.

Modifications made to CTFd

  • Challenge queries are updated to include first_solver status.
  • View router is updated to have distinct home page template.
  • Scoreboard query is updated to include number of solves.
  • Gravatar link generation function.

Screenshots

Easter eggs

  • Mouse hover on the GUID on the title screen or the customizable social button on the home screen will show a random excerpt of lyrics from the original game every time you refresh.
  • Press (or swipe) →↓↑→→↓→→↑↑↓↓←→←→ on the challenges screen will rename all challenge to a song in the original game and update the UI to Japanese (partially).