Skip to content
Getting Started

Getting Started

This page covers the first few minutes with Luna: signing in, choosing a first form, and finding your way around the app’s single screen.

LUNA is not in the app stores yet. Until it ships, the Android build is installed by sideloading a test build, and the iOS project has never been compiled. The web app at luna.runink.org exists for debugging only.

Before you start

  • Your Google account must be on the allowlist. LUNA has no sign-up form. An operator adds your address to LUNA_OWNER_EMAIL (see Access and sessions).
  • Google Sign-In is the only way in. There is no password path.

1. Sign in

The first screen shows Luna and one button, Sign in with Google. Pick the allowlisted account. The app sends Google’s ID token to IdentityService.GoogleLogin. The server checks the token against Google’s published keys, checks the email is verified and on the allowlist, and then opens a session that lasts 12 hours.

If sign-in fails, the server’s message tells you why:

MessageWhat it means
this account is not on this luna instance's allowlistThe Google account is valid, but it isn’t on the allowlist. Ask the operator to add it.
google email not verifiedGoogle reports the address as unverified.
invalid google tokenThe token from Google failed verification. Try signing in again.
cannot reach Google to verify this sign-in — this is a server-side connectivity problem, not a problem with your account: …The server couldn’t reach Google. The problem is on the server side.
luna has no allowed accounts configured (LUNA_OWNER_EMAIL unset)The server has an empty allowlist, so it rejects everyone.

2. Choose Luna’s first form

On first sign-in, needs_onboarding is true and the app opens the Choose Luna carousel. Swipe through the forms. The name field follows the form in focus (Archimedes the owl, Salem the cat, and so on) until you type your own. Tap Bind form to create the avatar and select it.

  • The name can’t be empty (“Luna needs a name.”).
  • or upload a custom video loop binds a video you pick as Luna’s idle loop instead of a painted form.

Every form is the same Luna, with the same memory and the same coaching. The form is only the image. You can change it later, and some forms only become wearable at higher levels (see The companion).

3. The one screen

LUNA has no tabs and no pages to navigate. After onboarding, the whole app is Luna on the Dreamcore backdrop, with a chat overlay floating above.

  • Luna, animated, reacting to listening, thinking and speaking. Luna also responds to touch.
  • The daily cards: Training, Meals and Steps. These are where you check in (see Habits and streaks).
  • The level ring. The number is Luna’s level and the arc is progress toward the next one. It turns gold and becomes tappable when you can afford a level.
  • The composer (“Say anything…”), the mic button, the speaker toggle, and the sparkle button (Show Luna something) that attaches photos.

The small ⋯ menu at the top left leads to everything else:

Menu itemWhat it opens
Profile & connectionsYour profile, data connections (steps, scale, sleep, weather) and the guide to Luna’s aspects
Training planThe plan console, with Overview, Training and Meals views of the week
Session historyPast conversations
Track an activityA GPS-tracked walk, run or ride
Wear a different formThe form switcher
Open-source licencesThird-party notices
Sign outEnds the session on the server (IdentityService.Logout)

4. First things to try

  1. Ask for a training plan. Type something like “make me a 4 day workout plan”. A request with a create word, a training word and a plan word goes straight to the plan generator instead of the chat model. Review the draft deck and save it. The Training card then follows that plan.
  2. Ask for meal targets. Type “meal plan, 82 kg” (with your own body mass). Meal targets are derived from the training week, so make the training plan first.
  3. Check in. Tap Session done on the Training card after a workout and tick off meals as you eat them. On Android, connect steps through Health Connect on the profile page.
  4. Just talk. Ask anything. Luna picks the aspect that fits, and the colour of the glow tells you which one is answering.

During the first week, a daily tip introduces one aspect each day. The full guide stays on the profile page.