Topcoat - Rust를 위한 풀스택 웹 프레임워크
요약
Rust 기반의 풀스택 웹 프레임워크인 Topcoat를 소개합니다. 서버 사이드 렌더링을 통해 API 보일러플레이트를 제거하고, Rust 코드를 JavaScript로 변환하여 클라이언트 빌드 없이도 동적인 UI를 구현할 수 있습니다.
핵심 포인트
- 서버 사이드 렌더링으로 DB 직접 조회 및 API 계층 최소화
- WASM 번들이나 별도의 클라이언트 빌드 단계가 필요 없음
- Rust 제어 흐름을 그대로 사용하는 HTML 템플릿 매크로 제공
- 모듈 구조 기반의 자동 라우팅 및 Tailwind CSS 통합 지원
- 세션 인증, 캐싱, 암호화 쿠키 등 강력한 요청 처리 기능 포함
모든 마크업을 서버에서 렌더링, 컴포넌트가 async로 DB를 직접 조회해 별도 API 계층용 보일러플레이트 제거
$(...)
표현식은 타입 검증되는 일반 Rust 코드로, 서버에서 평가되는 동시에 JavaScript로 변환되어 브라우저에서 즉시 재실행
-
wasm 번들 없고,
클라이언트 빌드 단계 필요 없음 -
서버 처리가 필요한 갱신은
#[shard]
로 표시, 인자 변경 시 서버 재렌더링 후 HTML 교체
view!
매크로로 HTML과 Rust에 충실한 템플릿 작성 가능, for
/if
등 Rust 제어 흐름과 조건부 속성 그대로 사용
모듈 구조 기반 라우팅을 빌드 단계 없이 자동 추론 (app/posts/id.rs
→ /posts/{post_id}
)
- Tailwind 기반
Topcoat UI 컴포넌트를 프로젝트로 복사해 자유롭게 수정 가능
tailwind
기능 활성화 시 Node 없이 Tailwind CSS 통합, 에셋 파이프라인에 자동 연결
- 요청 처리용으로 요청 컨텍스트(
Cx
), 앱 컨텍스트, #[memoize]
요청 단위 캐싱, 서명/암호화 쿠키, 세션 인증(로그인/로그아웃, 슬라이딩 만료, 토큰 회전) 제공
- MIT 라이선스
댓글과 토론
AI 자동 생성 콘텐츠
본 콘텐츠는 GeekNews의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기