본문은 빌드할 때 완성한다

기술 기록의 제목, 요약, 날짜, 본문은 빌드 결과의 HTML에 들어 있다. 검색 로봇과 자바스크립트를 끈 방문자도 같은 글을 읽는다. 브라우저가 받은 뒤 빈 틀을 채우는 방식이 아니므로 첫 문서 자체가 완결된 기록이다.

세 글의 메타데이터는 한 데이터 파일에서 나온다. 목록, 각 글, 사이트맵, RSS, llms 안내가 제목과 주소를 공유한다. 같은 사실을 여러 파일에 손으로 반복하지 않으면 날짜나 링크가 어긋날 가능성도 줄어든다.

검색은 이미 받은 목록을 좁힌다

기술 기록 페이지의 검색은 서버에 요청하지 않는다. 입력한 문자열과 선택한 주제를 기준으로 이미 문서에 있는 세 항목을 감춘다. 결과가 없으면 조건을 지우는 버튼을 바로 보여 준다. 데이터가 작기 때문에 검색 색인이나 별도 상태 관리도 필요 없다.

필터 버튼은 선택 상태를 보조 기술에 알리고, 입력에는 눈에 보이는 라벨을 붙였다. 자바스크립트가 없어도 전체 목록이 그대로 보여서 기록으로 가는 길은 막히지 않는다.

상호작용은 주소로 돌아올 수 있다

실험실의 세 장면은 한 페이지 안에서 전환된다. 입력한 문장을 잃지 않도록 패널을 제거하지 않고 숨긴다. 현재 실험은 주소의 쿼리에 기록되어 링크를 공유하면 같은 탭이 열린다.

정적이라는 말은 멈춰 있다는 뜻이 아니다. 서버가 매 요청마다 문서를 조립하지 않아도 브라우저 안에서 충분히 반응할 수 있다. 중요한 것은 문서와 행동 중 어느 한쪽도 다른 쪽의 실패에 끌려 내려가지 않게 만드는 것이다.

출처와 더 읽을 거리