Skip to main content
ExodeUI

EXODEUI DESKTOP

A little space for good ideas.

Choose your platform to get the official ExodeUI installer.

Looking for Intel Mac or other builds? Explore the web studio or check all download options.

Prefer the browser? Try for free in your browser →
Design arbejdsgang7 min læst·Updated oktober 2026·Af ExodeUI-teamet

Én fil til UI-design: Hvordan en enkelt åben fil erstatter Handoff

Et workflow for en enkelt-fil UI-design holder layout, tilstande, bevægelse, logik og databindinger i en enkelt åben fil. Hvad det ændrer, hvad det ikke løser, og hvordan ExodeUI bruger det.

Direkte Resumé & Definition

Core Takeaway

Et en-fil UI design workflow holder layout, interaktionstilstande, bevægelse, logik og databindinger af en komponent i én åben fil i stedet for at sprede dem på tværs af en designfil, en prototype og en kodebase. Filen bliver den ting, designere redigerer, udviklere gennemgår og AI-agenter kan læse. ExodeUI bruger denne model: en .exode-fil beskriver en komponent, og runtime-pakker afspiller den i appen.

Hvad betyder "én fil" i UI-design?

Det betyder, at komponenten har én autoritativ kilde. Tegnebrætterne, svæve- og trykket tilstande, fjederværdierne, betingelserne, der afgør, hvilken tilstand der kommer næste gang, og de input, din app kan indstille, alle live i det samme dokument. Intet vigtigt er tilbage i en separat overdragelsesnotat. Når filen ændres, ændres komponenten.

Overdragelsesproblemet en fil fjerner

I en typisk overdragelse leverer designeren en statisk fil plus en prototype og en skriftlig beskrivelse af bevægelsen. En udvikler genopbygger den bevægelse i kode, og de to versioner driver med det samme. En arbejdsgang med én fil fjerner genopbygningstrinnet for de dele, filen dækker. Det fjerner ikke behovet for anmeldelse, men det giver anmelderne det samme artefakt i stedet for to beskrivelser af det.

Hvad går ind i en åben UI-designfil

Den nøjagtige struktur afhænger af værktøjet, men en nyttig fil dækker de samme job:

  • Layout, herunder brudpunkter og hvordan komponenten reflows
  • Interaktionstilstande såsom inaktiv, hover, trykket, indlæsning, succes og fejl
  • Bevægelse, herunder tidslinjer, forårsfysik og overgange mellem tilstande
  • Logik og betingelser, der bestemmer, hvilken tilstand der er aktiv
  • Input og hændelser, så applikationskode kan drive komponenten og reagere på den
  • Databindinger for værdier, der kommer fra appen under kørsel

Hvad forbliver uden for filen

En komponentfil er ikke hele applikationen. Routing, autentificering, datahentning, tilladelser, analyser og tilgængelighedsindpakningen omkring en interaktiv kontrol bliver i din kodebase. Platformnavigation og systembevægelser forbliver normalt også platformspecifikke. Det er vigtigt at være klar over denne grænse: Et workflow med én fil er nemmere at anvende, når det håndterer den interaktive komponent og overlader applikationsproblemer til applikationen.

Kan et team gennemgå én fil?

Ja, hvis formatet er åbent og læsbart. ExodeUI gemmer en komponent i en åben .exode JSON-fil, så ændringer kan ændres, gennemgås og opbevares i versionskontrol. Det er en praktisk fordel i forhold til binære designfiler: en anmelder kan se, hvad der er ændret i filen, og et AI-kodningsværktøj kan læse det uden en proprietær dekoder. Åbenhed besvarer ikke alle styringsspørgsmål, men den gør revision mulig.

Hvordan ExodeUI bruger én fil

I ExodeUI kan en .exode-fil indeholde layout, brudpunkter, tidslinjer, tilstandsmaskiner, fjederfysik, logik, input og databindinger. Runtime-pakker afspiller filen i React, Vue, Svelte, Angular, Solid, React Native, SwiftUI og Flutter. Din kode sender input ind og modtager hændelser tilbage i stedet for at gentage bevægelsen. Den samme fil kan åbnes i browseren eller skrivebordseditoren, og AI-kodningsværktøjer kan redigere den gennem MCP-serveren.

Når en fil er det forkerte valg

Én fil passer dårligt til arbejde, som ikke er en interaktiv komponent: video i lang format, tunge 3D-scener eller et frit-whiteboard til tidlige idéer. Det passer også dårligt, når et team ikke har nogen gennemgangsproces og har brug for én fil til at håndhæve standarder af sig selv. Formatet kan gøre god praksis lettere. Det kan ikke erstatte praksis.

Snippet til produktionsimplementering

Interaktiv komponentimplementering
import { ExodeUICanvas } from 'exodeui';

// One component, one file. Layout, states, motion and logic stay in the
// .exode file; the app only supplies inputs and handles events.
export function CheckoutButton({ loading, disabled, onComplete }) {
  return (
    <ExodeUICanvas
      src="/checkout_button.exode"
      inputs={{ loading, disabled }}
      onTrigger={(name) => name === 'complete' && onComplete()}
    />
  );
}

Tast Principles for at huske

  • En arbejdsgang med én fil holder layout, tilstande, bevægelse, logik og input i ét autoritativt dokument
  • Det fjerner genopbygningstrinnet for den interaktive komponent, ikke behovet for gennemgang
  • Applikationsproblemer som routing, godkendelse og datahentning forbliver i din kodebase
  • En åben JSON-kildefil kan ændres, versioneres og læses af AI-værktøjer
  • ExodeUI afspiller den samme .exode-fil gennem runtimes på web-, mobil- og desktop-frameworks

Ofte stillede spørgsmål

Relaterede vejledninger og eksempler

Design interaktiv UI én gang. Lever den samme fil.

Byg tilstande, fjederfysik og logik visuelt i ExodeUI, og afspil den samme fil i React, SwiftUI, Flutter og mere. Kom gratis i gang.

Prøv gratis