gnuboard5NX
그누보드5를 유지보수하고 검증할 수 있는 플랫폼으로 새롭게 구현합니다. 기존 코드를 고치는 패치가 아닙니다.
목적
gnuboard5NX는 그누보드5를 처음부터 다시 구현하는 프로젝트입니다. 레거시 위에 기능을 얹지 않고, 호환성은 입력으로 유지하면서 애플리케이션 구조와 개발 경험을 다시 설계합니다. 목표는 유지보수하고 검증하며 확장할 수 있는 플랫폼입니다. 지금은 기반과 예시를 쌓는 단계이며, 그누보드5의 기능을 모두 갖춘 상태는 아닙니다.
방향
- 레거시 데이터베이스와 스키마 호환은 마이그레이션 입력입니다. 레거시 디렉터리와 실행 구조를 그대로 복사하지 않습니다.
- Slim 4 MVC로 웹 요청을 다루고, 공개 화면·관리자·API를 명확히 나눕니다.
- 기본 렌더링은 Plates 서버 사이드 HTML입니다. 더 풍부한 상호작용이 필요할 때만 React/Vite 아일랜드를 선택합니다.
- 의존성 주입과 설정을 명시하고, 모듈과 어댑터 경계를 지킵니다.
- 소스는 PHP 7.4에 맞춰 작성하고 PHP 8.x에서도 검증하며, 더 이상 쓰지 않는 방식은 피합니다.
- 예제, 자동 테스트, 문서를 바탕으로 기능을 점진적으로 전달합니다.
아키텍처
앱이 모듈을 조립합니다. 업무 모듈은 Slim, Plates, PDO를 직접 알지 않습니다. 공유 UI는 packages/ui에 있고, 공개 문서는 고정된 루트와 허용된 슬러그로만 제공합니다.