디렉터리 구조
myapp/
├── application/ # 도메인 코드
│ ├── _Global.php # 애플리케이션 전역 (BaseGlobal 상속)
│ ├── _Const.php # 애플리케이션 상수
│ ├── _Config.php # 데이터소스 등 기본 설정
│ ├── _Config/ # 스테이지별 설정 (alpha · beta · production, 안내는 README.md)
│ └── <Namespace>/ # Model 과 DAO
├── public/ # ← document root
│ ├── .htaccess
│ ├── __flexagon.php # 모든 요청이 거쳐 가는 프론트 컨트롤러
│ ├── _entry.php # 요청 시작 훅
│ ├── _prepare.php # 세션 이후 훅
│ ├── _router.php # 디스패치 지점
│ ├── _Template/ # 공용 템플릿 (head · tail · error404)
│ └── **/*.php # URL 과 1:1 대응하는 페이지
├── script/ # CLI 배치
├── docker/ # 컨테이너 설정 (Apache · 진입 스크립트 · php.ini)
├── .env.example.php # .env.php 예제 (비밀 값 키 목록)
├── Dockerfile # dev · alpha · beta · production 타깃
├── compose.yaml # 로컬 개발용 컨테이너
├── build.xml # 컨테이너 없이 배포할 때 (ant production)
├── composer.json
├── flexagon.php # 부트스트랩 로더
└── vendor/
└── flexagon/framework/ # 프레임워크 본체
application/ 아래는 네임스페이스가 곧 디렉터리 경로입니다. ExampleUser\UserDAO → application/ExampleUser/UserDAO.php.
_Flexagon\ 네임스페이스는 프레임워크 자신으로 해석되므로 애플리케이션에서 쓸 일이 없습니다.
public/ 만 웹에 노출하세요. 프로젝트 루트의 .env.php 에 비밀 값이, application/ 에 설정과 코드가 들어 있어서 document root 가 프로젝트 루트를 가리키면 그대로 서빙될 수 있습니다.