PHP 웹 플랫폼,
다시 설계하다
Core는 가볍게, 확장은 자유롭게.
멀티 도메인 · 블록 시스템 · Plugin + Package 아키텍처
데모 계정 — ID: admin / PW: 12341234
✨ 이렇게 Mublo로 돌아가는 사이트들 🚀
# 다운로드 & 의존성 설치 $ unzip mublo-main.zip && cd mublo-main $ composer install --no-dev # 브라우저에서 설치 마법사 실행 > https://your-domain.com/install
하나의 코드베이스, 무한한 가능성
MUBLO는 단순한 프레임워크가 아닌 플랫폼입니다. Core 위에 Plugin과 Package를 조합하여 어떤 웹서비스든 구축할 수 있습니다.
멀티 도메인
하나의 코드베이스로 여러 사이트를 운영합니다. 도메인별 테마, 회원, 권한을 독립적으로 관리하세요.
블록 시스템
코드 수정 없이 관리자에서 페이지를 구성합니다. 게시판, 배너, 갤러리 등 다양한 블록을 배치하고 스킨을 선택하세요.
Plugin + Package
Plugin으로 Core를 확장하고, Package로 독립 애플리케이션을 추가합니다. 이벤트 시스템으로 느슨하게 결합합니다.
Modern PHP
구조적이면서
쉽게 확장 가능한
PSR-4 오토로딩, DI 컨테이너, 이벤트 시스템 위에 구축되었습니다. Controller, Service, Repository 계층으로 책임을 명확히 분리합니다.
- PHP 8.2+ & PSR-4 표준
- Dependency Injection
- Event-Driven Architecture
- Result 객체 패턴
- AES-256-GCM 암호화
class ProductController { public function list( Request $request, Context $context ): ViewResponse { $result = $this->productService ->getList($context->getDomainId(), $filters); return ViewResponse::view('Product/List') ->withData($result->getData()); } public function create( Request $request ): JsonResponse { $result = $this->productService ->store($request->input('formData')); return $result->isSuccess() ? JsonResponse::success($result->getData()) : JsonResponse::error($result->getMessage()); } }
구조적이면서 CMS이다
기존 CMS의 편의성과 프레임워크의 구조를 동시에 갖추고 있습니다.
| 기능 | 기존 PHP CMS | MUBLO |
|---|---|---|
| 메인화면 수정 | PHP 코드 직접 수정 | 관리자에서 블록 편집 |
| 멀티 사이트 | 사이트마다 별도 설치 | 하나의 코드베이스 |
| 기능 확장 | Core 코드 직접 수정 | Plugin / Package 분리 |
| 아키텍처 | 절차적 / 레거시 | PSR-4, DI, Event |
| 비개발자 운영 | 제한적 | 블록 + 관리자 UI |
숫자로 보는 MUBLO
계층 구조 한눈에 보기
Core 위에 Plugin과 Package가 이벤트 시스템으로 연결됩니다. 각 계층은 독립적으로 개발하고 배포할 수 있습니다.
Open Ecosystem
누구나 만들고,
누구나 배포할 수 있습니다
Plugin과 Package는 독립적인 구조를 가지며, 이벤트 시스템으로 Core와 연결됩니다. 표준 인터페이스만 따르면 누구든 자신만의 확장을 개발하고 배포할 수 있습니다.
- Provider 하나로 자동 등록
- 독립 MVC 구조 (Controller / Service / Repository)
- 자체 마이그레이션 & 관리자 메뉴
- 이벤트 구독으로 Core 기능 확장
- 블록 렌더러 연동 (메인 페이지 노출)
class MyPluginProvider implements PluginProviderInterface { public function register(DependencyContainer $c): void { // 서비스 등록 $c->singleton(MyService::class); } public function boot(DependencyContainer $c, Context $ctx): void { // 이벤트 구독 $c->get(EventDispatcher::class) ->addSubscriber(new MySubscriber()); } }
지금 시작하세요!
관리자 데모를 먼저 확인하거나, 바로 다운로드해서 5분이면 시작할 수 있습니다.
데모 계정 — ID: admin / PW: 12341234
✨ 이렇게 Mublo로 돌아가는 사이트들 🚀