USWDS는 시스템 토큰, 프로젝트 테마 설정, 유틸리티 클래스, 컴포넌트를 구분합니다. 아래 레퍼런스에는 최신 문서에 따른 기본 테마 설정이 정리되어 있습니다. 연방 프로그램에서는 모든 컴포넌트를 대체하지 않고도 다른 타이포그래피 역할이나 색상 별칭을 구성할 수 있습니다.
미리보기는 3.14.0 CSS 및 아코디언 JavaScript을 사용한 독립적인 연구 기회 비교 예시입니다. 정부 배너와 기관 식별 표시는 포함하지 않습니다. 프로그램 이름과 단계는 가상이며, 필터링은 전적으로 브라우저에서 이루어집니다.
USWDS 간격 단위 하나는 8px입니다. units(2)는 16px, units(3)는 24px를 뜻합니다. 반 단위 토큰은 더 작은 간격을 제공하며, 유틸리티 표기에서는 반 단위에 05를 사용합니다. margin-2 유틸리티는 2픽셀 여백을 의미하지 않습니다.
간격 척도에는 tablet 및 desktop과 같이 이름이 지정된 너비도 포함됩니다. 이 이름은 재사용 가능한 토큰이지, 각 너비에 맞춰 모든 페이지를 다시 디자인하라는 뜻은 아닙니다. 이 비교 예시에서는 콘텐츠에 grid-container를 사용하고, 표에는 초점을 이동해 스크롤할 수 있는 영역을 둡니다.
기본 sans 토큰은 Source Sans Pro에, serif는 Merriweather에 연결됩니다. body와 UI 역할은 sans에, heading 역할은 serif에 연결됩니다. family("body") 함수는 이 연결을 따라 최종 값을 확인합니다. 프로젝트 문서를 작성할 때는 의미상 역할과 최종 글꼴 모음을 구분하세요.
로컬 미리보기에서는 글꼴을 다운로드할 필요가 없도록 본문에 Helvetica/Arial을, 제목에 Georgia를 명시적으로 사용합니다. 이는 표준 USWDS 서체 정체성이 아니라 예시를 위한 재정의입니다. 프로덕션 빌드에서는 uswds-core 설정을 통해 해당 역할을 구성하거나 배포된 글꼴 파일을 복사해야 합니다.
기본 primary 별칭은 blue-60v, #005ea2에 연결됩니다. primary-dark는 blue-warm-70v, #1a4480에, ink는 gray-90, #1b1b1b에 연결됩니다. 이는 테마 값일 뿐, 모든 USWDS 사이트가 동일한 브랜드 색상을 사용해야 한다는 뜻은 아닙니다.
동작이나 제목 스타일에는 의미를 나타내는 별칭을 사용하고, 실제 디자인 결정이 시스템 색상 토큰을 사용하는 것일 때만 해당 토큰을 사용하세요. 컴파일된 CSS에서 일치하는 모든 16진수 문자열을 바꾸기보다 설정에서 primary 별칭을 재정의하는 편이 관리하기 쉽습니다.
예시에서는 캡션과 scope="col"이 지정된 열 머리글, scope="row"가 지정된 기회 이름을 사용합니다. 각 항목에서 동일한 주제와 단계 필드를 비교하므로 표가 적합합니다. 영역을 스크롤하더라도 이러한 관계는 유지됩니다.
스크롤 가능한 래퍼에 tabindex="0"을 지정하면 키보드 사용자가 해당 영역으로 이동할 수 있습니다. 이렇게 하면 넓은 데이터를 그 영역 안에 담아 문서 전체의 너비가 늘어나지 않도록 할 수 있습니다. 미리보기에는 일반 텍스트 셀이 들어 있습니다. 프로그램 데이터가 없는 경우에는 숫자를 지어내지 말고 명시적인 콘텐츠 상태를 제공해야 합니다.
USWDS에서는 data-sortable을 통해 정렬 가능한 머리글을 지원합니다. 정렬 가능한 표에는 aria-live="polite"가 지정된 usa-table__announcement-region도 필요합니다. 숫자로 표시되는 값은 서식이 적용된 금액이 알파벳순이 아닌 값으로 정렬되도록 data-sort-value를 지정해야 할 수도 있습니다. 이 비교 예시에서는 세 행으로 구성된 주제 필터를 보여주는 것이 목적이므로 정렬을 사용하지 않습니다.
각 usa-accordion__button의 aria-controls는 연결된 usa-accordion__content를 가리킵니다. 기본 제공되는 JavaScript은 aria-expanded와 표시 상태를 업데이트합니다. bordered 수정자는 테두리 스타일을 변경하고, data-allow-multiple을 사용하면 여러 섹션을 동시에 열어 둘 수 있습니다.
콘텐츠 개요를 이해하기 쉽도록 제목 안에 버튼을 배치합니다. 프로그램의 적합성을 판단하는 데 필요한 요구 사항은 공개형 섹션 위에 표시해야 합니다. 이 예시에서는 각 패널에 추가 준비 정보와 가상 데이터 세트에 대한 설명을 담습니다.
@uswds/[email protected]을 설치하고 dist 디렉터리를 복사할 때 css, js, img, fonts를 하나의 폴더에 합치지 마세요. 스타일시트는 아이콘 및 글꼴에 상대 경로를 사용합니다. 경로를 유지하지 않으면 페이지가 일부는 제대로 표시되더라도 공개형 섹션 아이콘이나 글꼴이 누락될 수 있습니다.
head에서 uswds-init.min.js를 불러오고, 그다음 스타일시트를 불러온 후 본문 마크업 뒤에서 uswds.min.js를 불러오세요. 번들 라이브러리는 아코디언 기능을 활성화합니다. 아래의 검색 입력란과 주제 필터는 사용자 지정 애플리케이션 로직이며, 원격 검색 서비스를 호출하지 않습니다.
기본 label, input, select, button 스타일을 사용해 컨트롤을 표시합니다. 애플리케이션은 입력한 검색어와 선택한 주제를 가상의 세 가지 항목과 비교합니다. 결과 개수는 정중한 방식으로 공지되는 라이브 영역에 표시됩니다. 일치하는 결과가 없으면 안내와 초기화 동작을 보여 주면서 입력한 검색어는 유지합니다.
이 예시에서는 기회를 찾는 과정과 지원하는 과정을 의도적으로 구분합니다. 준비 내용을 열어도 임시 신청서가 생성되거나 요구 사항이 완료된 것으로 표시되지 않습니다. 실제 지원 절차를 만들려면 해당 프로그램의 정책, 인증 및 지속적으로 보존되는 거래 상태를 별도로 구현해야 합니다.
<div class="usa-accordion usa-accordion--bordered" data-allow-multiple>
<h3 class="usa-accordion__heading">
<button type="button" class="usa-accordion__button"
aria-expanded="false" aria-controls="preparation">Before you prepare a draft</button>
</h3>
<div id="preparation" class="usa-accordion__content usa-prose" hidden>
<p>This fictional opportunity asks for a project summary and a named contact.</p>
</div>
</div>
Sources에서 완전한 예시를 다운로드하세요. README에 정확한 로컬 실행 명령이 안내되어 있습니다.
벤더 경로는 이 문서에 대한 상대 경로로 유지하세요. 아카이브에는 이 미리보기에 사용된 에셋이 모두 포함되어 있습니다.
04
USWDS 디자인 시스템 에이전트 설정
구현 시작점
CSS에서 글꼴과 아이콘을 찾을 수 있도록 dist 디렉터리 구조를 유지하세요. 이 방식은 미리 컴파일된 배포판을 사용하는 경로이며, 테마를 사용자 지정하려면 Sass 빌드가 필요합니다. Sources에 있는 완전한 실행 예제 ZIP에는 미리보기의 정확한 종속성과 전체 문서도 포함되어 있습니다. 해당 ZIP을 압축 해제하고 그 디렉터리에서 python3 -m http.server 8080을 실행한 다음 http://localhost:8080/uswds.html을 여세요. 모듈 기반 예제를 file://로 열지 마세요.
셸 / HTML
npm install @uswds/[email protected]
mkdir -p public/assets/uswds
cp -R node_modules/@uswds/uswds/dist public/assets/uswds/
<!-- HTML head -->
<script src="/assets/uswds/dist/js/uswds-init.min.js"></script>
<link rel="stylesheet" href="/assets/uswds/dist/css/uswds.min.css">
<!-- After the component markup, before closing body -->
<script src="/assets/uswds/dist/js/uswds.min.js"></script>
프로젝트를 위한 프롬프트
에이전트 프롬프트
USWDS 3.14.0을 사용해 가상의 연구 기회 비교 화면을 만드세요. 전체 dist 에셋 트리, 초기화 스크립트, 컴포넌트 스타일시트와 JavaScript를 불러오세요. 의미에 맞는 표에 비교 가능한 항목을 표시하고, 표 제목과 열 머리글을 제공하세요. 레이블이 지정된 검색 및 카테고리 필터, 결과 수, 유용한 검색 결과 없음 상태와 재설정 기능을 구현하세요. 보조 요건에는 기본 아코디언을 사용하되, 핵심 비교 정보는 계속 표시하세요. 문서에 명시된 간격 단위와 테마 역할 매핑을 유지하고, 시스템 글꼴 재정의를 표시하세요. 이 디렉터리를 신청 절차로 바꾸거나 실제 자격 요건이나 수상 약속을 암시하지 마세요.
05
USWDS 디자인 시스템 출처 및 범위
독립적인 USWDS 3.14.0 컴포넌트 연구. 기회 항목은 가상 데이터이며, 연방 기관의 정체성을 주장하거나 신청 엔드포인트를 제공하지 않습니다. Helvetica/Arial과 Georgia는 기본 USWDS 글꼴 에셋이 아닌 로컬 글꼴 대체 항목입니다.