Luna ships with three samples in the com.cupkekgames.luna package, plus one demo in a sibling CupkekGames package. For setup instructions, see Quick Start.

Luna package samples

  • Essentials — reusable starter assets (theme, fonts, panel settings, audio, sprites, prefabs, UXML primitives). Showcase and GameFull both reference Essentials via sibling-relative paths.
  • Showcase — pure UI showcase. Flagship LunaShowcase scene + LunaStorybook component browser + per-component scenes for specials (DragAndDrop, Effects, LoadingScreen, UIAttractor, RPG, Tooltip variants, etc.). Requires only Luna's bundled deps (the foundation primitives plus data + graphs).
  • GameFull — complete game scaffold integrating every CupkekGames sibling package: inventory, RPG stats, save/load (Newtonsoft-JSON), settings, scene transitions, addressables, localization. Self-contained for save/serialization — the Newtonsoft serializer wiring lives inside this sample. Localization here is the runtime locale-class swap: Luna's LocalizationViewStyleSwitcher applies a locale-<code> USS class to every UIView, and the only shipped styling is the Essentials theme's .locale-ja hook that repoints the font tokens to the bundled Japanese SDF font. Wiring actual Unity Localization data (Locale list, String Tables, LocalizedString bindings) is your job (see GameFull → Known caveats). Install via Tools > CupkekGames > Package Manager.

Sibling-package samples

  • Ink Visual Novel Demo — lives in com.cupkekgames.inkbridge. Ink narrative scripting integrated with Luna's VisualNovel component — choices, branching dialogue, dialogue effects.

Looking for the old Newtonsoft Save Demo or a standalone Localization demo? The save demo was absorbed into GameFull on 2026-05-13. There is no separate Localization demo scene: Luna ships only the runtime LocalizationViewStyleSwitcher (which applies a locale-<code> USS class to every UIView) plus the Essentials theme's .locale-ja hook and the bundled Japanese SDF font — wiring the actual Unity Localization data is left to you. Details in the Release Notes.

Asset Sources

Asset Sources — credits and licenses for the third-party content used in Luna and its samples.

Where each production pattern lives

The samples double as the production reference. When you need a working example of a specific pattern, this is the map:

PatternSampleFiles
Main menu (save-aware Continue / New / Load / Quit)GameFullScripts/UI/MainMenuViewExample.cs
Tab hub with Switched channels and per-tab stacksShowcaseEsportLobby/Scripts/Screens/EsportLobbyShell.cs and the LunaShowcase screen shells
Reusable drilldown with typed per-push argsShowcaseLunaShowcase/Scripts/Screens/Details/HeroDetailScreen.cs receiving HeroDetailArgs; see Typed Destinations
Awaitable confirm modal (PushAsync<int> + ChoicePopupArgs)GameFullScripts/UI/PauseMenuViewExample.cs, Scripts/UI/MainMenuViewExample.cs
Pause flow (Esc trigger, modal, resume/quit decisions)GameFullScripts/UI.Generic/Pause/PauseEscapeTrigger.cs, Scripts/UI/PauseMenuViewExample.cs
Settings screen as a Switched tab containerGameFullSettingsGameFull prefab + the four SettingsTab* prefabs
Save/load UI over a real save systemGameFullScripts/SaveSystem/, Scripts/UI/GameSaveViewListExample.cs
Inventory / equipment with drag-drop and stat compareGameFullScripts/UI/Inventory/EquipmentViewPagination.cs
Scene transitions between menu and gameplay scenesGameFullScripts/UI/SceneTransition/
In-game HUD bound to live dataGameFullScripts/UI/GameHudView.cs, Scripts/UI/ResourceChipBinder.cs

Where to start

Import Essentials first. Showcase and GameFull resolve their theme, fonts, panel settings, and prefabs through it via sibling-relative paths — without it, scenes load unstyled.

Whichever sample you're after, follow the import choreography in Quick Start.

Settings

Theme

Light

Contrast

Material

Dark

Dim

Material Dark

System

Sidebar(Light & Contrast only)

Light
Dark

Font Family

DM Sans

Wix

Inclusive Sans

AR One Sans

Direction

LTR
RTL