Piattaforma cloud · Nuova risorsa

Sistema di progettazione AWS Cloudscape.

Una guida alla configurazione di Cloudscape con token reali per l’aggiornamento visivo, spaziatura adattata alla densità, API controllate per i moduli e una procedura guidata funzionante in due passaggi per le risorse.

Guida OpenDesign8 capitoli50 voci di riferimentoGuida applicativa originale
01

Anteprima dell’interfaccia del sistema di progettazione sistema di design AWS Cloudscape

Prova nomi non validi, scegli un profilo di capacità, passa dalla configurazione alla revisione, cambia aspetto e conferma la configurazione in locale.

Configura e rivedi un’area di lavoroApri l’esempio completo
Cloudscape 3.0.1390 nativo con React 18.3.1; composizione originale di Wizard e stato solo locale. · Riferimento per l’implementazione
02

Riferimento di progettazione del sistema di progettazione sistema di design AWS Cloudscape

Componenti Cloudscape 3.0.1390 e design-tokens 3.0.114, tema visual-refresh. I valori sono letti dal JSON dei token pubblicato. Le modalità cromatiche e le densità dei contenuti sono dimensioni separate. Questo è un riferimento a un’implementazione selezionata, non l’esportazione completa dei token.

Ruoli semantici del colore nelle modalità chiara e scura

Fonte
Nome / regolaValore / configurazioneUtilizzo
color-background-layout-mainlight: #ffffff; dark: #161d26Usa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-background-container-contentlight: #ffffff; dark: #161d26Usa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-text-body-defaultlight: #0f141a; dark: #c6c6cdUsa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-text-body-secondarylight: #424650; dark: #c6c6cdUsa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-text-interactive-defaultlight: #424650; dark: #dedee3Usa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-text-link-defaultlight: #006ce0; dark: #42b4ffUsa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-text-status-errorlight: #db0000; dark: #ff7a7aUsa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-text-status-successlight: #00802f; dark: #2bb534Usa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-border-input-defaultlight: #8c8c94; dark: #656871Usa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.
color-background-button-primary-defaultlight: #006ce0; dark: #42b4ffUsa questo ruolo denominato nel contesto previsto; la coppia mostra i valori risultanti nelle modalità chiara e scura, non campioni intercambiabili.

Tipografia di corpo e titoli

Fonte
Nome / regolaValore / configurazioneUtilizzo
font-size-body-m14pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
font-size-body-s12pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
font-size-heading-l20pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
font-size-heading-m18pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
font-size-heading-s16pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
font-size-heading-xl24pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
font-size-heading-xs14pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-body-m20pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-body-s16pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-heading-l24pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-heading-m22pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-heading-s20pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-heading-xl30pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.
line-height-heading-xs18pxAbbina font-size e line-height dello stesso ruolo. Le varianti Header e Box applicano la gerarchia dei componenti.

Spaziatura adattiva alla densità

Fonte
Nome / regolaValore / configurazioneUtilizzo
space-scaled-xxxscomfortable: 2px; compact: 0pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-xxscomfortable: 4px; compact: 2pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-xscomfortable: 8px; compact: 4pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-scomfortable: 12px; compact: 8pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-mcomfortable: 16px; compact: 12pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-lcomfortable: 20px; compact: 16pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-xlcomfortable: 24px; compact: 20pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-xxlcomfortable: 32px; compact: 24pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.
space-scaled-xxxlcomfortable: 40px; compact: 32pxUsa il valore per la densità comoda o compatta in base alla densità attiva. Non ridimensionare il testo insieme a queste variazioni di spaziatura.

Forma dei componenti

Fonte
Nome / regolaValore / configurazioneUtilizzo
border-radius-container16pxMantieni la forma del componente indicato. Il raggio di un pulsante non è un raggio universale per i contenitori.
border-radius-button20pxMantieni la forma del componente indicato. Il raggio di un pulsante non è un raggio universale per i contenitori.
border-radius-input8pxMantieni la forma del componente indicato. Il raggio di un pulsante non è un raggio universale per i contenitori.
border-radius-alert12pxMantieni la forma del componente indicato. Il raggio di un pulsante non è un raggio universale per i contenitori.
border-radius-dropdown8pxMantieni la forma del componente indicato. Il raggio di un pulsante non è un raggio universale per i contenitori.
border-radius-card-embedded8pxMantieni la forma del componente indicato. Il raggio di un pulsante non è un raggio universale per i contenitori.

Tempi di interazione

Fonte
Nome / regolaValore / configurazioneUtilizzo
motion-duration-responsivedefault: 115ms; disabled: 0msCon le animazioni disabilitate, il movimento nativo si riduce a zero. Evita di aggiungere una transizione non correlata alla stessa interazione.
motion-duration-expressivedefault: 165ms; disabled: 0msCon le animazioni disabilitate, il movimento nativo si riduce a zero. Evita di aggiungere una transizione non correlata alla stessa interazione.
motion-duration-complexdefault: 250ms; disabled: 0msCon le animazioni disabilitate, il movimento nativo si riduce a zero. Evita di aggiungere una transizione non correlata alla stessa interazione.

Composizione nativa API

Fonte
Nome / regolaValore / configurazioneUtilizzo
WizardactiveStepIndex · onNavigate · onSubmitGestisci il passaggio corrente in React; convalida prima di accettare l’indice successivo richiesto.
FormFieldlabel · constraintText · errorTextInserisci la regola di formato e il messaggio di errore accanto al campo del nome.
Inputvalue · onChange({ detail })Leggi detail.value invece del target di un evento DOM.
SelectselectedOption · options · onChangeMantieni l’oggetto dell’opzione selezionata, compresi label e value.
Containerheader={<Header variant="h2" />}Raggruppa i campi di configurazione correlati senza inventare un nuovo sistema di schede.
ColumnLayoutcolumns={2} · variant="text-grid"Mostra metadati di revisione compatti con colonne adattive della libreria.
SpaceBetweensize="l"Usa la scala di spaziatura della libreria per separare i campi e le sezioni di revisione.
applyModeMode.Light / Mode.DarkCambia la modalità visiva globale per i componenti nativi e i token semantici.
03

Guida completa del sistema di progettazione sistema di design AWS Cloudscape

Una guida pratica per scegliere, applicare e valutare questo sistema in un’interfaccia reale.

DESIGN-aws-cloudscape.md

Indicazioni complete, un punto di partenza per l’implementazione e link alle fonti.

Scarica la guida

Architettura di configurazione del sistema di progettazione sistema di design AWS Cloudscape

Adatta il flusso di lavoro a Wizard

L’esempio separa la configurazione dalla revisione. Wizard fornisce la navigazione tra i passaggi e le azioni; l’applicazione gestisce l’indice corrente, i valori dei campi, la regola di convalida e la conferma finale. Il lettore può tornare alla configurazione senza ricreare il modulo né perdere la capacità selezionata. È una soluzione più adatta che nascondere un intero flusso di lavoro articolato in più passaggi all’interno di una singola Card generica.

Da questa guida su OpenDesign

Crea la struttura con i contenitori nativi

Container, Header e SpaceBetween definiscono la sezione del modulo. h1 introduce l’operazione; h2 identifica il gruppo di impostazioni. Il testo esplicativo compare accanto al campo o al passaggio a cui si riferisce. La larghezza massima di 1200px e la spaziatura interna della pagina sono impostazioni esplicite dell’applicazione CSS, non token di layout esportati da Cloudscape.

Token semantici e modalità visive del sistema di progettazione sistema di design AWS Cloudscape

Scegli un ruolo prima di un valore

Il riferimento distingue lo sfondo del layout, il contenuto dei contenitori, il testo del corpo, il testo interattivo e i messaggi di stato. I relativi valori non costituiscono una tavolozza uniforme. Per l’interfaccia personalizzata, importa il token denominato da @cloudscape-design/design-tokens invece di copiare un valore esadecimale chiaro in ogni stato. Il token definisce lo scopo; il valore può evolvere.

Cambia modalità dalla libreria

L’anteprima richiama applyMode con Mode.Light o Mode.Dark da global-styles. In questo modo aggiorna la modalità usata dai componenti, anziché sostituire colori CSS arbitrari. Una schermata di revisione scura conserva le stesse etichette, la capacità selezionata e lo stato di navigazione. Il JSON sorgente registra entrambi i valori nelle modalità chiara e scura, così da poterli esaminare separatamente.

Tipografia e gerarchia delle intestazioni del sistema di progettazione sistema di design AWS Cloudscape

Abbina i ruoli di carattere e interlinea

Il riferimento visual-refresh body-m è 14px con un’interlinea di 20px. heading-xl è 24px con un’interlinea di 30px, heading-l è 20px con 24px e heading-m è 18px con 22px. Questi ruoli definiscono la gerarchia compatta del modulo; non sono dimensioni intercambiabili per titoli promozionali.

Usa varianti semantiche dei componenti

La variante Header h1 identifica Create a workspace. Le intestazioni dei contenitori usano h2 e la variante Box awsui-key-label conferisce alle etichette della revisione uno stile secondario coerente. I valori della revisione restano testo normale e leggibile. Non trasformare ogni etichetta di campo in un titolo solo per darle più risalto visivo.

Campi controllati e composizione della revisione nel sistema di progettazione sistema di design AWS Cloudscape

Comprendi il contratto degli eventi detail

Input emette un evento il cui detail.value contiene il nuovo testo. Select emette detail.selectedOption, che è un oggetto opzione, non una semplice stringa. L’esempio completo memorizza l’oggetto e ne mostra label nella revisione. In questo modo si evita un comune errore d’integrazione per cui Select appare vuoto perché a selectedOption viene assegnato solo un identificatore.

Mantieni le istruzioni insieme al campo

  • La regola sul formato del campo è specifica di questa applicazione di esempio.
  • Le opzioni di capacità non sono dichiarazioni sui prodotti o sui prezzi.
  • I componenti nativi gestiscono la presentazione; lo stato React contiene la configurazione.

Densità e layout adattivo del sistema di progettazione sistema di design AWS Cloudscape

Non trattare la modalità compatta come un livello di zoom

I valori di spaziatura ridimensionati pubblicati variano in base alla densità. Per esempio, space-scaled-m è 16px nella modalità comoda e 12px in quella compatta, mentre space-scaled-l è rispettivamente 20px e 16px. Queste differenze comprimono il ritmo verticale senza ridefinire i contenuti né ridurre arbitrariamente il testo. I componenti nativi applicano le proprie regole di densità.

Adatta le strutture dei passaggi e della revisione

Wizard modifica la presentazione della navigazione in base allo spazio disponibile; ColumnLayout dispone i metadati della revisione in modo adattivo. Sotto i 600px, l’applicazione CSS riduce la spaziatura esterna. L’esempio non imposta in modo rigido la larghezza della navigazione tra i passaggi su desktop e, nella versione mobile, mantiene visibili le azioni Next, Previous e Confirm, che qui operano solo in locale.

Convalida e conferma di Wizard nel sistema di progettazione sistema di design AWS Cloudscape

Convalida prima di accettare la navigazione

onNavigate riceve requestedStepIndex. Prima di passare alla revisione, l’applicazione controlla il nome e lascia invariato il passaggio se non è valido. La modifica del nome cancella l’errore, così il successivo invio può essere convalidato da zero. Tornando alle impostazioni, il nome e l’opzione selezionata vengono mantenuti.

  1. Invia un nome non valido e resta nella configurazione.
  2. Correggi il nome e scegli un profilo di capacità diverso.
  3. Passa alla revisione e conferma entrambi i valori.
  4. Usa Edit settings per tornare indietro senza perdere nessuno dei due valori.
  5. Conferma in locale e riavvia l’esempio.

Distingui una configurazione dal provisioning

L’azione finale mostra un Alert locale di esito positivo e un riepilogo della configurazione. Non simula la creazione di una risorsa reale. In un’applicazione effettiva, mantieni l’azione di invio in sospeso durante il provisioning, distingui le richieste accettate dalle risorse create e consenti di recuperare da un errore senza perdere la configurazione.

Accessibilità dei moduli nel sistema di progettazione sistema di design AWS Cloudscape

Mantieni le etichette e i nomi della navigazione

Wizard riceve navigationAriaLabel e le stringhe tradotte delle azioni. Ogni Input e Select è incluso in un FormField con etichetta. Alert comunica gli esiti non validi o positivi tramite la semantica nativa del componente. I vincoli visibili integrano l’etichetta del campo, senza sostituirla.

Verifica la navigazione da tastiera nell’intero flusso

Usa la tastiera per raggiungere il campo del nome, aprire il selettore della capacità, andare avanti, tornare indietro, modificare e confermare. La gestione nativa dello stato di focus è utile, ma la regola di convalida dei passaggi e il significato della conferma restano responsabilità dell’applicazione. Una libreria di componenti non può convalidare autonomamente una regola di business mancante.

Installazione e limiti delle personalizzazioni del sistema di progettazione sistema di design AWS Cloudscape

Installa insieme i pacchetti correlati

L’implementazione importa i componenti dai rispettivi sottopercorsi dei pacchetti e carica global-styles una sola volta. design-tokens fornisce il riferimento per gli stili personalizzati. Il file entry React e il file CSS compatto forniti riproducono l’esempio interattivo in un’applicazione Vite React. Mantieni insieme versioni compatibili dei pacchetti Cloudscape.

Usa l’esempio fornito come punto di partenza concreto

Sistema di design AWS Cloudscape Esempi di componenti del sistema di progettazione

main.jsx — procedura guidata di configurazione completa

Wizard, FormField, Select e metadati di revisione nativi, con navigazione controllata e conferma locale.

jsx
import React, { useState } from "react";
import { createRoot } from "react-dom/client";
import Wizard from "@cloudscape-design/components/wizard";
import Container from "@cloudscape-design/components/container";
import Header from "@cloudscape-design/components/header";
import FormField from "@cloudscape-design/components/form-field";
import Input from "@cloudscape-design/components/input";
import Select from "@cloudscape-design/components/select";
import SpaceBetween from "@cloudscape-design/components/space-between";
import ColumnLayout from "@cloudscape-design/components/column-layout";
import Box from "@cloudscape-design/components/box";
import Button from "@cloudscape-design/components/button";
import Alert from "@cloudscape-design/components/alert";
import Toggle from "@cloudscape-design/components/toggle";
import { applyMode, Mode } from "@cloudscape-design/global-styles";
import "@cloudscape-design/global-styles/index.css";
import "./cloudscape.css";
const sizes = [
  { label: "Development · 2 vCPU / 4 GiB", value: "dev" },
  { label: "Standard · 4 vCPU / 8 GiB", value: "standard" },
  { label: "Compute · 8 vCPU / 16 GiB", value: "compute" },
];
function App() {
  const [name, setName] = useState("analytics-sandbox"),
    [size, setSize] = useState(sizes[0]),
    [step, setStep] = useState(0),
    [error, setError] = useState(""),
    [complete, setComplete] = useState(false),
    [dark, setDark] = useState(false);
  function next(index) {
    if (index > 0 && !/^[a-z][a-z0-9-]{2,29}$/.test(name)) {
      setError(
        "Use 3–30 lowercase letters, numbers or hyphens, starting with a letter.",
      );
      return;
    }
    setError("");
    setStep(index);
  }
  function reset() {
    setStep(0);
    setComplete(false);
    setError("");
    setName("analytics-sandbox");
    setSize(sizes[0]);
  }
  return (
    <main className="awsui-typography cloudscape-example">
      <div className="appearance">
        <span>CLOUDSCAPE · RESOURCE CONFIGURATION</span>
        <Toggle
          checked={dark}
          onChange={({ detail }) => {
            setDark(detail.checked);
            applyMode(detail.checked ? Mode.Dark : Mode.Light);
          }}
        >
          Dark mode
        </Toggle>
      </div>
      <Header
        variant="h1"
        description="Configure a fictional compute workspace. This example does not create a cloud resource."
      >
        Create a workspace
      </Header>
      <div className="wizard-content">
        {complete ? (
          <SpaceBetween size="l">
            <Alert type="success" header="Configuration confirmed locally">
              The {name} recipe is ready for review. No cloud API was called and
              no resource was provisioned.
            </Alert>
            <Container header={<Header variant="h2">Workspace recipe</Header>}>
              <ColumnLayout columns={2} variant="text-grid">
                <div>
                  <Box variant="awsui-key-label">Name</Box>
                  {name}
                </div>
                <div>
                  <Box variant="awsui-key-label">Capacity</Box>
                  {size.label}
                </div>
              </ColumnLayout>
            </Container>
            <Button onClick={reset}>Start another example</Button>
          </SpaceBetween>
        ) : (
          <Wizard
            activeStepIndex={step}
            onNavigate={({ detail }) => next(detail.requestedStepIndex)}
            onCancel={reset}
            onSubmit={() => setComplete(true)}
            i18nStrings={{
              stepNumberLabel: (stepNumber) => `Step ${stepNumber}`,
              collapsedStepsLabel: (stepNumber, stepsCount) =>
                `Step ${stepNumber} of ${stepsCount}`,
              skipToButtonLabel: (step) => `Skip to ${step.title}`,
              navigationAriaLabel: "Configuration steps",
              cancelButton: "Reset",
              previousButton: "Previous",
              nextButton: "Next",
              submitButton: "Confirm locally",
              optional: "optional",
            }}
            steps={[
              {
                title: "Configure workspace",
                description: "Choose the identity and capacity.",
                content: (
                  <Container
                    header={<Header variant="h2">Workspace settings</Header>}
                  >
                    <SpaceBetween size="l">
                      <FormField
                        label="Workspace name"
                        constraintText="3–30 characters; lowercase letters, numbers and hyphens."
                        errorText={error}
                      >
                        <Input
                          value={name}
                          onChange={({ detail }) => {
                            setName(detail.value);
                            setError("");
                          }}
                        />
                      </FormField>
                      <FormField
                        label="Capacity profile"
                        description="These profiles are sample application data, not real cloud products or prices."
                      >
                        <Select
                          selectedOption={size}
                          onChange={({ detail }) =>
                            setSize(detail.selectedOption)
                          }
                          options={sizes}
                        />
                      </FormField>
                    </SpaceBetween>
                  </Container>
                ),
              },
              {
                title: "Review configuration",
                description:
                  "Check the values before confirming the local example.",
                content: (
                  <SpaceBetween size="l">
                    <Container
                      header={
                        <Header
                          variant="h2"
                          actions={
                            <Button onClick={() => setStep(0)}>
                              Edit settings
                            </Button>
                          }
                        >
                          Workspace settings
                        </Header>
                      }
                    >
                      <ColumnLayout columns={2} variant="text-grid">
                        <div>
                          <Box variant="awsui-key-label">Workspace name</Box>
                          {name}
                        </div>
                        <div>
                          <Box variant="awsui-key-label">Capacity profile</Box>
                          {size.label}
                        </div>
                      </ColumnLayout>
                    </Container>
                    <Alert type="info">
                      Confirmation changes the preview only. Production
                      provisioning would require a real service, permissions and
                      a verified response.
                    </Alert>
                  </SpaceBetween>
                ),
              },
            ]}
          />
        )}
      </div>
      <footer>
        Native Cloudscape components 3.0.1390 · configuration, validation,
        review and local confirmation.
      </footer>
    </main>
  );
}
createRoot(document.getElementById("root")).render(<App />);

Riferimento del codice

  • Salva questo file come src/main.jsx. Il blocco di codice successivo è il file importato src/cloudscape.css.

cloudscape.css — struttura della pagina dimostrativa

Larghezza dell’applicazione e spaziatura attorno ai componenti Cloudscape nativi.

css
body {
  margin: 0;
}
.cloudscape-example {
  padding: 24px;
  max-width: 1200px;
  margin: auto;
}
.appearance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.appearance > span {
  font-size: 11px;
  letter-spacing: 0.06em;
  font-weight: 700;
}
.wizard-content {
  margin-top: 32px;
}
.cloudscape-example footer {
  font-size: 12px;
  margin-top: 32px;
  color: #5f6b7a;
}
@media (max-width: 600px) {
  .cloudscape-example {
    padding: 16px;
  }
  .appearance {
    align-items: start;
  }
  .appearance > span {
    max-width: 180px;
  }
  .wizard-content {
    margin-top: 24px;
  }
}

Riferimento del codice

  • Non sovrascrivere i nomi delle classi dei componenti nativi con questo foglio di stile dell’applicazione.
04

Sistema di design AWS Cloudscape Configurazione dell’agente per il sistema di progettazione

Punto di partenza per l’implementazione

L’esempio nativo visualizzato è stato incluso con React 18.3.1. Usa una versione di Node.js supportata dalla versione di Vite che installi; mantieni le versioni utilizzate dal file lock dell’applicazione.

sh
npm create vite@latest cloudscape-workspace -- --template react
cd cloudscape-workspace
npm install
npm install [email protected] [email protected] @cloudscape-design/[email protected] @cloudscape-design/[email protected] @cloudscape-design/global-styles
# Replace src/main.jsx and add src/cloudscape.css from the full examples.
npm run dev

Un prompt per il tuo progetto

Prompt per l’agente
Crea un flusso di configurazione delle risorse con Cloudscape. Usa il codice nativo fornito per Wizard/Container/FormField/Input/Select e i ruoli dei token di aggiornamento visivo. Mantieni i valori dei campi tra i passaggi, convalida prima di navigare e mostra una revisione completa. Considera i profili di capacità di esempio come segnaposto per il mio modello di dominio, non come prodotti cloud reali. Integra il provisioning solo dopo aver ricevuto un API; distingui tra risultati in sospeso, non riusciti e confermati.
05

Sistema di design AWS Cloudscape Fonti e ambito del sistema di progettazione

Guida OpenDesign ed esempio originale di configurazione dell’area di lavoro locale con componenti Cloudscape nativi 3.0.1390. I profili di capacità sono dati fittizi dell’applicazione. Non sono coinvolti account cloud, API di provisioning né prezzi di servizi effettivi.