Docs changelog
Checkout docs changelog and new features.
v0.1.0 - 2025-10-31
업데이트
-
[New]
HtmlComponent/render(RenderContext)기반 핵심 인터페이스 정식 도입 -
[New]
AbstractHtmlTag/HtmlTag(자식 있음)/VoidTag(자식 없음)3단 구조 확정 -
[New] 일관 API 명명:
css()/attr()/child()/children()(외부) ↔addClass()/addAttribute()/addChild()/addChildren()(내부) -
[New] Atomic Design 패턴(Atom → Molecule → Organism → Template → Page) 표준 컴포넌트 샘플 포함
-
[New]
El.*팩토리(예:El.div(),El.input()) 추가로 선언형 DSL 작성성 개선 -
[New] 성능 최적화 렌더러(내부
StringBuilder기반) 초판 반영 — 객체형 DSL 문법 유지하면서 렌더 성능 강화 -
[Update] i18n 메시지 접근을 위한
RenderContext#getMessage(key, default)우선 규약 정리 -
[Update] 공통 유틸(조건부 렌더링
El.ifTrue(...)) 및 빈 태그El.empty()제공 -
[Fixed] 중첩 자식 렌더 시 공백/개행 처리 일관성 문제 개선
내용kosmos-dsl v0.1.0은 Java만으로 HTML을 선언적으로 구성하기 위한 초판입니다.
핵심은 명확한 태그 계층(자식 보유 여부로 분리), 일관된 메서드 명명, 렌더 성능 최적화입니다. 기존 Thymeleaf 템플릿과 병행 또는 대체가 가능하며, SSR 기반 페이지를 강한 타입 안정성과 컴포저블 구조로 작성할 수 있습니다.
-
간단 예시
-
업그레이드/도입 가이드
-
Gradle 예시 (실제 그룹/아티팩트는 프로젝트 설정에 맞게 조정)
implementation("net.uneedsoft:kosmos-dsl:0.1.0") -
기존 컴포넌트는
HtmlComponent를 구현하고render(ctx)에서El.*로 반환 -
성능 최적화를 위한 내부 StringBuilder 렌더러는 기본 활성화 (추가 설정 불필요)
-
- kosmos-dsl-0.1.0.jar(155,511 bytes)