CUI, C 언어 하나로 네이티브 UI를 그리다
CUI – Native UI components for C
C99 코드베이스 하나로 Win32, Cocoa, X11에서 동작하는 네이티브 UI 라이브러리 CUI. 약 64개의 완성형 컴포넌트를 제공하며, 의존성이 전혀 없고 완전한 앱 크기가 약 250KB에 불과하다. 프레임당 0.1~0.25ms로 화면 전체를 다시 그리는 즉시 모드 방식이라 상태 동기화 문제가 없고, 모든 컴포넌트가 키보드와 모션 감소 설정을 지원한다.
컴포넌트는 스스로를 그리고 무슨 일이 있었는지 반환하는 함수입니다. 여러분의 변수가 곧 상태이며, 매 프레임 화면 전체가 다시 서술되므로 동기화할 것이 아무것도 없습니다.
HN 토론
79- nepthar
좋네요, 근데 이건 프론트엔드만 하는 사람이 바이브코딩한 것 같기도 하네요. AI 개발은 전적으로 지지합니다만, 첫 커밋이 4일 전이고 전부 claude가 작성했어요. UI는 마치 "AI가 떠올리는 스타일"을 C 프레임워크로 옮긴 것처럼 보입니다.
이런 실험을 꺾고 싶지는 않지만, 이 프로젝트를 만드는 데 지난 20여 년간 쌓인 UI와 C 지식이 얼마나 쓰이지 않았는지도 의문이네요. 그리고 저는 C로 칸반 보드를 만들고 싶은 걸까요? 잘 모르겠네요.
실제 사용을 위해 평가할 때는 조심하세요.
- hollowturtle
모바일에서 이리저리 클릭해봐도 아무 일도 안 일어나네요, 바이브코딩 쓰레기. Clay와 비교하는 데 10분은 쓸 텐데 그럴 가치도 없네요. 결과는 이미 뻔하니까요. 이런 종류의 프로젝트 문제는 금방 사라진다는 거죠. 노력이 적을수록 가치도 적어요.
- zerr
커스텀 UI 컴포넌트에 더 가깝네요. 네이티브라면 예를 들어 macOS에서는 Cocoa NSButton을, WinUI에서는 Microsoft.UI.Xaml.Controls.Button을 감쌌어야 했을 겁니다.
- turtlebits
HN에 게시된 프로젝트용 최소 릴리스 기간 플래그가 필요해요.
아니면 이런 유형의 프로젝트를 자주 올리는 사용자를 무시하는 플래그라도요.
- piker
C는 메모리 안전성 등에 대해 별도의 Fable 패스를 둘 수 있다면 컴파일 시간 측면에서 점점 더 합리적이 되네요.