-
KeystoneJS로 간단하게 Admin페이지와 Headless CMS 만들기Tip 2023. 9. 6. 18:09728x90
KeystoneJS는 GraphQL을 기반으로 하는 CMS(Content Management System) 프레임워크입니다. React, Node.js, GraphQL을 기반으로 하며, GraphQL API를 통해 데이터를 관리하고, 웹사이트와 모바일 앱을 개발할 수 있습니다.
1. KeystoneJS의 주요 특징
- GraphQL 기반의 API: KeystoneJS는 GraphQL을 기반으로 하는 API를 제공합니다. GraphQL은 구조화된 데이터를 효율적으로 조회할 수 있는 API 표준입니다.
- React 기반의 UI: KeystoneJS는 React를 기반으로 하는 UI를 제공합니다. React는 빠르고 유연한 UI 프레임워크입니다.
- Node.js 기반의 백엔드: KeystoneJS는 Node.js를 기반으로 하는 백엔드를 제공합니다. Node.js는 빠르고 확장성이 뛰어난 백엔드 플랫폼입니다.
2. KeystoneJS를 사용하는 주요 유형
- CMS(콘텐츠 관리 시스템)
- CRM(고객 관계 관리)
- ERP(전사적 자원 관리)
- SaaS(서비스형 소프트웨어)
3. KeystoneJS 시작하기
KeystoneJS는 CLI를 통해 무척 간단하게 시작할 수 있습니다.
KeystoneJS CLI는 KeystoneJS 프로젝트를 생성하고, 데이터베이스를 설정하고, UI를 구성하는 데 도움이 되는 도구입니다.
- KeystoneJS CLI를 설치합니다.
- KeystoneJS 프로젝트를 생성합니다.
- 데이터베이스를 설정합니다.
- UI를 구성합니다.
KeystoneJS 프로젝트를 생성하는 예시를 보여드리겠습니다.
npx create-keystone
이 명령을 실행하면 KeystoneJS 프로젝트가 생성됩니다. 생성된 프로젝트는 다음과 같은 디렉터리 구조를 갖습니다.
keystone-project ├── app(KeystoneJS UI의 소스 코드) │ ├── components │ ├── pages │ └── store └── config(KeystoneJS의 설정 파일)
이제 아래의 명령어를 입력하면 간단하게 실행됩니다.
npm start
4. KeystoneJS의 장점
- 빠르고 쉽게 웹 애플리케이션을 구축할 수 있습니다.
- 확장성이 뛰어나며 대규모 애플리케이션을 구축할 수 있습니다.
- 다양한 기능을 제공하여 복잡한 애플리케이션을 구축할 수 있습니다.
- 활발한 커뮤니티와 문서를 통해 지원을 받을 수 있습니다.
5. KeystoneJS의 단점
- KeystoneJS는 규모가 큰 프로젝트에 적합하지 않을 수 있습니다.
KeystoneJS는 작은 규모의 프로젝트에 적합한 CMS 프레임워크입니다. - KeystoneJS의 일부 기능은 커스터마이징 하기 쉽지 않을 수 있습니다.
- GraphQL기반의 CMS로 일반적으로 사용하는 REST API를 지원하긴 하지만 적절하지 않습니다.
KeystoneJS는 사용하기 쉽고, 다양한 기능을 제공하며 Next.js로 제작하기도 간편합니다. Vercel이나 AWS 등으로도 간단하게 배포할 수 있는 CMS 프레임워크입니다.
프로젝트를 진행할 때 가장 귀찮은 작업인 기본적인 Admin 페이지를 생성해 주기 때문에 엔터프라이즈 급의 프로젝트를 개발하는 경우가 아니고 GraphQL기반의 프로젝트라면 KeystoneJS를 사용할 것을 고려해 보는 것을 추천합니다.
'Tip' 카테고리의 다른 글
vh 버그 해결 방법(feat. safari) (0) 2024.03.19 Webview를 위한 핀치 줌(pinch zoom) 구현하기 (0) 2024.02.24 Next.js에서 사용하기 좋은 모니터링 툴 3가지 (0) 2023.08.10 JavaScript에서 바로 사용하는 Tip 4가지 (0) 2023.08.01 IOS Safari WebView 화면 확대 막기 (0) 2023.02.09