Appearance
Accounts & signing in
The hosted app requires an account: when you're signed out, a full-screen sign-in page (the LED.FYI brand mark over the sign-in card) is all you can reach. Once you're signed in, a cached session keeps you signed in across restarts: reopening the app resumes instantly, even offline, after a brief Loading… splash while the saved session resolves.
Three gates run in order before the workbench unlocks:
- Sign in (or create an account)
- Verify your email (first sign-up only)
- Accept the Terms of Service (once, and again only if the terms change)
When LED.FYI is invite-only
LED.FYI can be switched to invite-only, as it was during the private beta. While that's on, an extra Enter your beta code step sits between verifying your email and the Terms: "led.fyi is in private beta. Enter the code from your invite to continue." Type the code (XXXX-XXXX-XXXX) and click Continue, or open the invite link, which fills the code in and redeems it for you. Request access (under "Don't have a code?") opens the support page, and Sign out backs out. The code is tied to your account, so you enter it once, not once per device. While invite-only is off, this step never appears.
Share links you receive from others (#/s/… and #/ar/… URLs) are public and never ask for an account; see Sharing projects.
Ways to sign in
The sign-in card offers up to four methods:
| Method | How it works |
|---|---|
| Continue with Google | Sends you to Google and back. Shown only on deployments where Google sign-in is enabled. |
| Continue with Apple | Sends you to Apple and back. Shown only on deployments where Apple sign-in is enabled. |
| Email me a sign-in link | Passwordless "magic link": enter your email and click Send sign-in link. The confirmation reads "We sent a one-tap sign-in link to your address. Open it to finish signing in, no password needed." |
| Email + password | The classic form. Always available. |
Below the form, No account? Create one flips the card to Create account (email + password, minimum 6 characters), and Forgot password? starts a reset (see below). Back to sign in returns from any of the alternate states.
WARNING
The Google and Apple buttons only appear when that provider is configured for the deployment. Email + password and the magic link always work.
If a sign-in is refused
When a sign-in link or a Google/Apple sign-in sends you back without signing you in, a notice appears in the bottom-right corner of the sign-in page saying what happened and what to do next. There are four, depending on why the sign-in didn't go through:
| When | Heading | Text |
|---|---|---|
| You started from an LED.FYI desktop app, version 1.7 or older, with no account yet | Sign-in didn't finish | "LED.FYI desktop versions 1.7 and older can't create new accounts. Create your account here with Google, Apple or email." |
| The sign-in link was already used, or is more than an hour old | That link has expired | "Sign-in links work once and expire after an hour. Enter your email below to get a new one." |
| You pressed Cancel on the Google or Apple sign-in page | Sign-in was cancelled | "Choose a sign-in option below to try again." |
| Anything else went wrong | Sign-in didn't finish | "Please try again below. If it keeps happening, email support@led.fyi." |
The notice appears in the language the app is set to. At the same time the error is removed from the address bar, so it doesn't linger in your history or travel along with a copied link.
Sign-in links never carry your session itself. An emailed link (sign-in, verification, password reset or invite) holds a one-time code that works once, in any browser or on any device, so you can request a reset on your phone and open it on your laptop. Google and Apple send back a code that only the browser you started in can use. Either way the app removes the code from the address bar as soon as it has used it. Dismiss the notice with ✕, or simply sign in again; it clears itself once you're in.
Creating an account & verifying your email
Signing up sends a verification email and flips the card to a Verify your email state showing the address the link went to, with Resend verification email and Use a different email. Click the link in the email to activate the account, then sign in.
Whichever method you use, creating the account records one sign-up event in the product analytics, on the server, so it doesn't depend on the cookie choice in your browser. It carries your account id and the sign-in method (Google, Apple or email), never your email address or name; see Cookies, analytics & data.
If you sign in with an account whose email was never confirmed, you land on a full-screen Verify your email page instead of the workbench: same resend button, plus Sign out. Once you click the emailed link, the page continues automatically.
Accepting the Terms of Service
After your email is confirmed, a one-time Accept the Terms of Service page asks you to review the Terms of Service and click I agree and continue. You only do this once, unless the terms are updated, in which case everyone is re-prompted at their next sign-in.
Desktop
A desktop user with a valid offline license accepted the terms during setup and skips this screen, but only while their accepted version is current; a terms update re-prompts desktop users too. An offline desktop user is never locked out by this gate: they're let through and asked to re-accept the next time they're online. See the desktop app.
Resetting a forgotten password
- On the sign-in card, click Forgot password?, enter your email, and click Send reset link. The confirmation reads "If an account exists for that address, a reset link is on its way."
- Opening the link reopens the app straight into a Set a new password dialog (new password + confirm, minimum
6characters) over a clean backdrop (never over the workbench), with the language switcher available in the corner, since the link may open on a different device. - On success you're signed in immediately ("Password updated. You are signed in."). The notice appears on whatever screen comes next: the workbench, or for a brand-new account the Terms of Service step.
Already signed in and just want a new password? Change it any time in Account settings; no email round-trip needed.
Changing the language before you sign in
Every pre-app screen (sign in, verify email, accept terms, set new password) has a quiet globe menu in the top-right corner. It lists Auto (browser) plus each supported language in its own name: English, 简体中文, Español, Português, Nederlands, Deutsch, Norsk, Dansk, Italiano, 日本語. The chip shows the language you're currently reading; the check mark shows your stored preference. Your choice persists on the device and, once you sign in, syncs to your account. See Languages.
Signing out
Open the Account menu (the person icon in the top bar) and click Sign out. On the desktop app, signing out also clears the cached offline license, so the next person on the machine starts clean; see the offline license.
Signed out without signing out?
Your saved session normally lasts until you sign out. The exception is when LED.FYI moves its sign-in service to a new address: every browser is signed out once, and so is the desktop app when the update that makes the same move installs. Nothing is lost. Sign in again the usual way and your projects, plan and preferences are where you left them. Sign-in links already in your inbox keep working until they expire.
Signing in on the desktop app
Google/Apple sign-in on desktop opens your system browser (not an in-app window) and hands the session back to the app via a ledfyi:// deep link. Magic links and password-reset links work the same way, whether the app is already running or closed, and when it is already running, signing in does not reload the app or disturb what you have open. Everything else (the gates, the card, the language menu) is identical to the web. See The desktop app and Signing in on desktop.
First time in?
Right after your first sign-in, a short welcome tour asks for your preferred units and wiring-sheet colors and creates your first project; see first-run onboarding and Sign in & first run.

