회원가입 | 고객센터 |
DESIGNONEX DXCMS BOARD
로그인
DESIGNONEX
디자인원엑스
About DXMB └ 메뉴얼 └ 이용약관 └ MB키 발급 └ 업데이트 DXCMS └ 메뉴얼 └ 다운로드 └ Themes └ Plugin └ Skin └ 사용후기 └ 마켓개발자 키 발급 DXB └ DXB Documentation └ InterfaceGallery └ Download └ 사용후기 └ 디자인소스 Service Q&A PR리그 자유게시판 갤러리 포인트게임 공지사항
로그인 회원가입
고객센터
DX 철학 & 비전

DXCMS 비전

A Administrator
2026.04.09 19:14(수정됨) 9 0
DXCMS는 단순한 CMS가 아닙니다.
라라벨이 진입하지 못한 시장을 장악하면서, 동시에 라라벨 수준의 개발 경험을 제공하는
"유일한 PHP 플랫폼"으로 성장할 수 있는 모든 구조적 토대를 이미 갖추고 있습니다.
커뮤니티가 모이면, DXCMS는 한국 PHP 개발 생태계의 표준이 될 수 있습니다.
 

01. DesignOneX 제품 생태계 전체 지도

DXCMS + DXMB + DXB — 세 도구가 하나의 생태계를 이룹니다

 

대부분의 CMS는 단일 제품입니다. DesignOneX는 다릅니다.
CMS(DXCMS) + 실시간 엔진(DXMB) + UI 빌더(DXB) 를 동시에 운영하는 종합 플랫폼입니다.

 
제품 URL 설명 핵심 특징
DXCMS designonex.com/ dxcms-board PHP CMS + 미니 프레임워크 게시판·회원·포인트·샵·관리자 올인원 PHP 5.6~8.x FTP 단독 배포 한국 결제/로그인 내장
DXMB designonex.com/mb DXMB Socket 실시간 미들웨어 서비스 0.1s 지연 SSL 암호화 Firebase 대체
DXB designonex.com/dxb Design eXperience Builder Tailwind 계승 런타임 CSS 엔진 MIT 오픈소스 빌드 없음 브라우저 런타임
 
세 제품의 시너지: DXB(오픈소스)로 개발자 커뮤니티를 끌어들이고 → DXCMS로 실제 서비스를 구축하게 하며 → DXMB로 실시간 기능을 연결합니다. 각 도구는 독립적으로도 작동하지만, 함께 쓸 때 가장 강력한 개발 경험을 만들어냅니다.
마켓 개발자 키 제도: designonex.com/developer-key에서 마켓 개발자 키를 발급합니다. Themes / Plugin / Skin 세 개의 별도 마켓 섹션이 운영 중이며, 제3자 개발자가 자신의 스킨·플러그인을 등록하고 배포할 수 있는 인프라가 이미 갖추어져 있습니다.
 

02. DXCMS가 존재하는 이유

시장 분석 라라벨이 진입하지 못하는 시장이 실재합니다

라라벨은 위대한 프레임워크입니다. 하지만 라라벨이 도달하지 못하는 곳이 있습니다.

→ PHP 7.x 환경만 지원하는 저가 공유호스팅 (국내에 아직 수만 곳)
→ SSH 접속이 불가능한 환경 (Composer 설치 불가)
→ FTP 업로드만 가능한 클라이언트의 서버
→ 그누보드/라이믹스를 쓰고 있지만 더 현대적인 CMS를 원하는 수십만 사용자

DXCMS는 이 공백을 채우도록 설계된 유일한 도구입니다.
 

시장 포지셔닝 매트릭스

플랫폼 PHP 5.x/6.x 지원 Composer 불필요 FTP 배포 한국 기능 내장
DXCMS (DesignOneX) ✅ PHP 5.6+ 완전 독립 ✅ FTP만 가능 카카오/토스 (플러그 추가 구현)
Laravel 11 ❌ PHP 8.2+ ❌ Composer 필수 ❌ SSH 필요 별도 구현
WordPress ✅ PHP 5.2+ 독립 ✅ FTP 가능 플러그인
그누보드 5 ✅ PHP 5+ 독립 ✅ FTP 가능 내장
라이믹스 ✅ PHP 7+ 독립 ✅ FTP 가능 내장

결론: DXCMS는 WordPress/그누보드의 "설치 편의성"과 Laravel의 "개발 경험"을 동시에 제공하는 유일한 도구입니다. 이것이 DXCMS만의 블루오션 포지션입니다.


03. 지금 당장 쓸 수 있는 기능 완전 목록

라라벨에 없는 것들이 모두 여기 있습니다

라라벨은 프레임워크입니다 — 기능을 직접 만들어야 합니다.
DXCMS는 플랫폼입니다 — 기능이 이미 압축 파일 안에 들어 있습니다.
 
카테고리 내장 기능 라라벨 대비
게시판 시스템 목록·보기·쓰기·수정·삭제·댓글·첨부·검색 공지 고정·추천·신고·스크랩·조회수 직접 구현 필요
게시판 스킨 기본·갤러리·쇼핑몰·ERP 4종 내장 skin.json으로 커스텀 스킨 무제한 추가 없음
회원 시스템 가입·로그인·마이페이지·레벨·포인트 차단·비활성화·역할(member/manager/admin) △ Breeze 별도 설치
소셜 로그인 카카오·네이버·구글·GitHub OAuth2 내장 △ Socialite 별도 설치
포인트/경험치 DxPoint — 적립·차감·내역·레벨업 자동화 없음
실시간 기능 WebSocket 알림·채팅·접속자 모니터 (DXMB) △ Laravel Echo 별도
SEO 자동화 OG·Twitter Card·JSON-LD·사이트맵·robots.txt 직접 구현 필요
캐시 Redis → APCu → 파일 캐시 자동 전환 별도 설정 필요
멀티사이트 도메인별 독립 테마·메뉴·게시판·페이지 복잡한 구성 필요
에디터 CKEditor4 로컬 내장 없음
파일 업로드 MIME+이중확장자 검증·썸네일(DxThumb) 자동 △ Intervention 별도
팝업 관리 DxPopup — 기간·기기·위치 설정 없음
알림 시스템 DxNotification — 댓글·답글·친구·스크랩 채널 별도 설정
방문자 통계 내장 대시보드 (일별·페이지·회원 현황) 없음
관리자 패널 완전 내장 어드민 (20개 메뉴) ❌ Filament 등 별도
보안 Secure.php — WAF·CSRF·XSS·RateLimit·Bot탐지 분산 구현 필요
설치 마법사 브라우저에서 5분 설치, migrate.php 업그레이드 ❌ Artisan CLI 필요


04. 확장성 1 — 스킨 시스템

개발자 생태계를 키우는 가장 강력한 진입점

스킨은 단순히 디자인을 바꾸는 것이 아닙니다.
boards/skins/{이름}/ 폴더 하나가 완전한 독립 애플리케이션이 될 수 있습니다.

스킨 폴더 구조 — 이것 하나로 모든 게 가능합니다
boards/skins/my-skin/
├── skin.json          ← 이름•버전•저자•설명•커스텀 설정 선언
├── list.php           ← 목록 뷰 (이것 하나만 있어도 작동!)
├── view.php           ← 상세 뷰
├── write.php          ← 작성/수정 폼
├── parts/             ← 재사용 파셜 (row.php, card.php 등)
├── actions/           ← 커스텀 URL 자동 생성
│   ├── inventory.php  ← /게시판키/inventory
│   └── export.php     ← /게시판키/export
└── assets/            ← CSS•JS•이미지 (URL 서빙 가능)
    ├── skin.css
    └── skin.js

스킨이 "단순 디자인"이 아닌 이유
기능 설명
커스텀 URL 자동화 actions/inventory.php 파일 하나를 만들면 /게시판키/inventory URL이 자동 생성됨. 별도 라우트 등록 불필요.
독립 핸들러 list/handler.php를 만들면 DB 쿼리부터 렌더링까지 100% 독립 처리. CMS 코어 없이 완전한 앱 구현 가능.
5단계 폴백 탐색 스킨→현재테마/board/스킨→현재테마/board→default/board/스킨→default/board. list.php만 있어도 나머지는 자동.
skin.json 메타 이름·버전·저자·설명·커스텀 설정 항목 선언. 관리자에서 boards/skins/ 폴더를 자동 감지해 드롭다운에 표시.
헬퍼 함수 내장 dx_skin_asset() · dx_skin_config() · dx_skin_part() 전용 헬퍼. 에러 발생해도 CMS 계속 동작 (격리).

개발자가 스킨 하나를 만들어서 배포하면,
다른 사용자는 boards/skins/에 폴더를 복사하고 관리자에서 선택만 하면 즉시 적용됩니다.

→ WordPress 플러그인/테마 배포 모델과 완전히 동일한 개념
쇼핑몰 스킨, 갤러리 스킨이 이미 내장 — 즉시 레퍼런스로 활용 가능
진입 장벽이 낮아 첫 기여자를 끌어들이기에 최적인 구조


05. 확장성 2 — 플러그인 & 마켓 생태계

Packagist를 넘어서는 올인원 패키지 시스템

플러그인 구조 — 라라벨 ServiceProvider와 동등한 힘
plugins/my-plugin/
├── manifest.php       ← 플러그인 메타 (id•name•version•type)
├── plugin.php         ← 진입점: 서비스 등록•훅 등록•라우트 등록
├── controllers/       ← 플러그인 전용 컨트롤러
├── routes/            ← 플러그인 전용 라우트
├── views/             ← 플러그인 전용 뷰
├── admin/             ← 관리자 UI
└── assets/            ← 정적 파일

// plugin.php — 플러그인이 할 수 있는 모든 것
dx_register_plugin(array('id' => 'my-plugin', 'type' => 'payment', ...));
dx_app()->singleton('payment', function() { return new KGInicis(); });
dx_add_hook('dx_after_order', 'MyPlugin@onAfterOrder');
DxRouter::post('/api/payment/callback', 'PaymentController@callback');

마켓 API — 이미 완성된 배포 인프라
docs/MARKET_API_SPEC.md에 완전한 API 명세가 존재합니다. CMS와 designonex.com 마켓 서버가 X-Site-Key 인증으로 통신하며, 각 사이트에서 플러그인을 원클릭으로 설치할 수 있는 인프라가 이미 구현되어 있습니다.
마켓 API 엔드포인트 기능 의미
POST /sites/register 사이트를 마켓에 등록 + site_key 발급 새 설치마다 자동 등록
POST /plugins 플러그인을 마켓에 등록/업데이트 개발자가 업로드 가능
GET /plugins 플러그인 목록 검색 관리자 → 마켓에서 탐색
POST /plugins/{id}/install 플러그인 다운로드 URL 반환 원클릭 설치
PUT /sites/me 사이트 정보 갱신 버전 체크·업데이트 알림

이 구조는 WordPress.org 플러그인 디렉토리와 동일한 모델입니다.
차이점: DXCMS는 Themes · Plugin · Skin 세 카테고리로 더 세분화되어 있습니다.
개발자 키 발급 → 제품 등록 → 사용자 원클릭 설치의 완전한 사이클이 이미 작동합니다.


06. 확장성 3 — 프레임워크 레이어

라라벨 문법과 90% 동일한 개발 경험

v6.2.0에서 DxRouter • DxContainer • QueryBuilder 세 핵심 프레임워크 컴포넌트가 동시에 추가되었습니다.
코드 주석에는 명시적으로 "라라벨 스타일 확장"이라고 기록되어 있습니다.
이것은 실험이 아니라 전략적 선언입니다

3대 프레임워크 컴포넌트 — 문법 동등성 증명
컴포넌트 동등도 DXCMS 문법 예시 Laravel
DxRouter
(
라우팅)
95% DxRouter::get('/posts/{id}', 'PostController@show')
  ->middleware('auth');
Route::get('/posts/{id}',
 [PostController::class,'show'])
  ->middleware('auth');
QueryBuilder
(DB
조회)
90% dx_db('posts')
  ->where('status', 1)
  ->orderBy('id','desc')
  ->paginate(20);
DB::table('posts')
  ->where('status', 1)
  ->orderBy('id','desc')
  ->paginate(20);
DxContainer
(DI
컨테이너)
85% dx_app()->singleton('mailer',
  function() {
    return new MyMailer(dx_config('host'));
  }
);
$m = dx_make('mailer');
app()->singleton(Mailer::class,
  function($app) {
    return new MyMailer(config('mail.host'));
  }
);
$m = app(Mailer::class);
HookManager
(
이벤트)
75% dx_add_hook('dx_after_login',
  function($args) {
    DxPoint::reward($args['user']['id'], 10);
  }, 10);
Event::listen(UserLoggedIn::class,
  function($event) {
    Points::reward($event->user->id, 10);
  }
);

라라벨을 쓰던 개발자가 DXCMS로 오면 처음 30분 안에 익숙해집니다.
라우트 등록 방법:    DxRouter::get()  ← Route::get() 과 동일
쿼리 빌더 사용법:   dx_db()->where()  ← DB::table()->where() 와 동일
서비스 컨테이너:    dx_app()->bind()  ← app()->bind() 와 동일
이벤트/훅:          dx_add_hook()     ← 개념 동일, 문법만 다름


07. 확장성 4 — extend/ & HookManager

라라벨에 없는 DXCMS만의 독자 강점

라라벨은 미들웨어를 클래스로 만들고, 커널에 등록하고, 라우트에 체이닝해야 합니다.
DXCMS는 파일을 폴더에 넣으면 끝입니다.

extend/ — 파일을 폴더에 넣으면 자동 실행
폴더 실행 시점 실제 활용 예
extend/top/ DB•세션•Auth 완료 직후 라우팅 전 점검 모드 • IP 차단 • 커스텀 인증 글로벌 변수 주입 • 유지보수 페이지
extend/middle/ 라우트 확정 직후 핸들러 실행 전 방문자 로그 • A/B 테스트 접근 제어 • 라우트별 전처리
extend/bottom/ 렌더링 완료 후 출력 직전 성능 로그 • 캐시 저장 정리 작업 • 광고 인젝션

파일명으로 실행 순서 제어: 01_maintenance.php → 02_ip_block.php → 03_logging.php 순서로 실행됩니다. 에러가 발생해도 다음 파일은 계속 실행됩니다 (격리 보장).
비개발자도 사용 가능: 코드를 등록하는 행위(훅 등록, 미들웨어 클래스 작성) 없이 파일만 넣으면 됩니다. 이것은 진입 장벽을 극적으로 낮춥니다.

HookManager — WordPress 방식 + 필터 시스템
훅 이름 발생 시점 등록 예시
dx_top / dx_bottom 모든 페이지 최상단/하단 광고•배너•스크립트 주입
dx_body_bottom ob_flush 직전 DxPopup이 이 훅을 사용
dx_after_login 로그인 성공 후 포인트 지급•알림•로그
dx_after_logout 로그아웃 후 세션 정리•접속 기록
dx_{type}_top/bottom 게시판•페이지 타입별 board_top, page_bottom 등
dx_extend_top/bottom extend/ 실행 후 추가 초기화•후처리
필터: post_content 등 값 변환 필터 (add/apply) nl2br•마크다운•하이라이트
 

08. 라라벨 개발자가 오면 어떤 경험을 하는가

학습 비용 최소화 — 라라벨 경험자 즉시 생산적
개념 Laravel DXCMS 체감 난이도
라우터 Route::get() DxRouter::get() ★☆☆  거의 동일
미들웨어 ->middleware("auth") ->middleware("auth") ★☆☆  문법 동일
DB 조회 DB::table()->where() dx_db()->where() ★☆☆  거의 동일
DI 컨테이너 app()->bind()/make() dx_app()->bind()/make() ★☆☆  거의 동일
이벤트 Event::dispatch() dx_run_hook() ★★☆  개념 동일
설정 읽기 config("app.key") dx_config("key") ★☆☆  거의 동일
JSON 응답 response()->json() dx_json() ★☆☆  거의 동일
플래시 메시지 session()->flash() dx_set_flash() ★☆☆  거의 동일
리다이렉트 redirect()->back() dx_redirect_back() ★☆☆  거의 동일
Eloquent ORM User::find($id) 없음→QueryBuilder직접 ★★☆  SQL 알면 쉬움
ServiceProvider AppSP::boot() plugin.php ★★☆  비슷한 개념
Artisan CLI php artisan make:* 없음→파일 직접 생성 ★★☆  수동
Blade @extends/@section PHP include 직접 ★☆☆  더 단순

라라벨 개발자가 DXCMS를 배우는 데 걸리는 시간: 약 2~4시간
라우터•미들웨어•QueryBuilder•DI 컨테이너 — 이 4가지가 이미 동일합니다.
나머지는 DXCMS만의 추가 기능(CMS, 게시판, 포인트, 소셜로그인)을 익히는 과정입니다.
이것은 학습이 아니라 "보너스 기능 습득"에 가깝습니다.


09. 현재 동등 수준 & 격차 분석

현재의 격차를 정직하게 보여주고, 그 격차를 어떻게 메울 것인지를 말합니다.

영역별 현재 동등 수준 (라라벨 = 기준)

영역 수준 진행 바 (20칸) 현황
라우팅 기본 문법 19/20 ███████████████████░ get/post/group/resource — 거의 완전 동일
QueryBuilder 18/20 ██████████████████░░ WHERE/JOIN/집계/CRUD/paginate 완성
DI 컨테이너 17/20 █████████████████░░░ bind/singleton/make — 핵심 기능 동일
이벤트/훅 시스템 15/20 ███████████████░░░░░ Action/Filter 구조 동일, 이벤트 클래스 없음
CMS 기능 20/20 ████████████████████ 게시판/회원/포인트/샵 — 라라벨 압도
호스팅 호환 20/20 ████████████████████ PHP 5.6+•FTP 배포 — 라라벨 진입 불가 영역
보안 17/20 █████████████████░░░ Secure.php WAF/RateLimit — 상업 수준
실시간 16/20 ████████████████░░░░ DXMB WebSocket 내장 (라라벨보다 강함)
ORM Active Record 2/20 ██░░░░░░░░░░░░░░░░░░ QueryBuilder 있음, Model 클래스 없음 ← 최대 과제
PSR-4 오토로딩 0/20 ░░░░░░░░░░░░░░░░░░░░ require_once 수동 ← Composer 생태계 필요
테스트 인프라 1/20 █░░░░░░░░░░░░░░░░░░░ PHPUnit 기반 없음 ← 기업 채택에 필요
문서/커뮤니티 현재 작업중.... 진행형

격차 요약 — 가장 중요한 3가지

1위. DxModel (Active Record) — QueryBuilder는 완성, 그 위에 얇은 Model 레이어만 추가
2위. PSR-4 오토로딩 — Composer 없이도 spl_autoload_register로 구현 가능
3위. 테스트 인프라 — PHPUnit 기반 기초 Feature Test 구조

모두 PHP 5.6 호환을 유지하면서 구현 가능합니다.
이 3가지가 완성되면 라라벨과 "진짜 동등한" 프레임워크가 됩니다.


10. 성장 로드맵

지금 → 라라벨 동등 → 글로벌

Phase 0 — 기반 완성 (이미 달성)
  • DxRouter•DxContainer•QueryBuilder•HookManager 프레임워크 레이어 완성
  • 스킨•플러그인•테마 3중 확장 구조 완성
  • 마켓 API + 개발자 키 발급 인프라 완성
  • DXMB(실시간)•DXB(CSS) 독립 제품 생태계 형성
  • designonex.com 자체가 DXCMS로 운영 중 (실제 레퍼런스)

Phase 1 — 프레임워크 레이어 완성
  • Plugin register()/boot() 분리 → ServiceProvider 동등 구조
  • 간이 PSR-4 오토로더 → 네임스페이스 지원 (Composer 없이)
  • 커스텀 미들웨어 클래스 (ClassName@handle 구조)
  • PHPUnit 기반 Feature Test 기초 구조
  • Packagist 패키지 선택적 통합 (Composer 옵션)

Phase 3 — 글로벌 생태계 & 라라벨 동등
  • 국제 개발자 커뮤니티 형성 → 영어권 마켓 확장
  • Blade 수준 DxBlade 템플릿 엔진 (선택적)
  • 기업용 채택 가능한 완전한 테스트 인프라
  • "PHP 5.x 지원 + 라라벨 수준 개발 경험" — 세계 유일 포지션 확립
  • designonex.com이 한국 PHP 개발 생태계의 허브


11. 최종 선언 — DXCMS가 그리는 미래

도전장이 아닌 현실적 비전

DXCMS의 비전은 이것입니다.

"라라벨이 들어가지 못하는 곳에서 시작해,
   라라벨 수준의 개발 경험으로 개발자를 끌어들이고,
   한국 PHP 생태계의 새로운 표준이 된다."

이것은 허황된 꿈이 아닙니다.
이미 코드 안에, 이미 구조 안에, 그 길이 놓여 있습니다.

DXCMS가 가진 3가지 결정적 강점
1. 라라벨이 진입 불가능한 시장 PHP 5.6~8.x•FTP 배포•Composer 불필요•저가 공유호스팅 완전 호환. 이 시장은 비어있고, DXCMS는 그 유일한 현대적 대안입니다.
2. 라라벨 개발자가 즉시 적응 가능 DxRouter•QueryBuilder•DxContainer 문법이 라라벨과 90% 동일. 생태계에 참여하는 비용이 거의 없습니다.
3. 이미 작동하는 확장 인프라  스킨 마켓•플러그인 마켓•테마 마켓•개발자 키•MarketAPI. WordPress가 10년 걸려 만든 것을 DXCMS는 이미 갖추고 있습니다.

댓글0

로그인 후 댓글을 작성할 수 있습니다.
22
전체 회원
69
전체 게시글
46
전체 댓글
569
오늘 방문
47,886
전체 방문
0
현재 접속
인기글 7일 이내
최신글
최신댓글