Node와 TypeScript로 Encore.ts를 활용한 설문 시스템 구축 방법
2025-02-05 22:20:33Node와 TypeScript를 사용한 Encore.ts로 설문 시스템 구축하기
들어가는 글
디지털 시대에서 신속하고 공정하게 의견을 모으는 방법 중 하나로 설문 조사가 있습니다. 이번 글에서는 Node와 TypeScript, Encore.ts를 활용하여 자신만의 설문 시스템을 구축하는 방법을 상세히 다루어 보겠습니다.
필수 전제 조건
설문 시스템 구축에 앞서 기본적인 REST API에 대한 이해가 필요합니다. 또한, Node.js와 Express의 사용 경험이 있으면 더욱 수월합니다. 이러한 준비가 되었다면, 이제 실제 개발 환경을 설정해보겠습니다.
환경 설정
Node.js 및 Encore 설치
- Node.js 설치: Node.js 다운로드
- Encore CLI 설치: Encore 설치 가이드
Encore 설치 명령어
- macOS:
brew install encoredev/tap/encore - Windows (PowerShell):
iwr https://encore.dev/install.ps1 | iex - Linux:
curl -L https://encore.dev/install.sh | bash
설치 확인
- Node.js 버전 확인:
node -v - Encore 버전 확인:
encore version
프로젝트 세팅
Encore CLI를 사용하여 새 프로젝트를 생성합시다. 터미널에서 아래 명령어를 입력하세요.
encore app create
언어 선택 시 TypeScript를 선택하고, 프로젝트 템플릿으로 "Empty app"을 선택하여 빈 프로젝트를 생성합니다. 프로젝트 이름은 본인이 원하는 대로 설정하세요.
설문 시스템 API 개발
첫 번째 API 엔드포인트를 만들어 봅시다. /hello 경로에 접속했을 때 "Hello, world!"라는 응답을 보내는 간단한 엔드포인트를 구축합니다.
- 프로젝트의 루트 디렉토리에
hello디렉토리를 생성하고, 그 안에hello.ts파일을 추가 hello.ts에 API 엔드포인트 정의
import { api } from 'encore.dev/api';
export const helloEndpoint = api({
path: '/hello',
method: 'GET',
action: async (_req) => ({ message: 'Hello, world!' }),
});
데이터베이스 설정
Encore.ts 프로젝트는 PostgreSQL을 사용합니다. PostgreSQL을 설치하고, 데이터베이스 연결 설정을 완료한 후, 설문 조사를 위한 데이터 스키마를 설계합니다.
설문 조사 기능 구현
설문 시스템에는 다음과 같은 기능이 필요합니다:
- 설문 생성
- 설문 항목 추가
- 사용자 투표 기능
- 결과 조회
각 기능에 대한 API 엔드포인트를 정의하고, 데이터베이스와 통신하여 필요한 데이터를 저장하거나 가져옵니다.
클라우드에 배포하기
Encore Cloud 플랫폼을 통해 쉽게 프로젝트를 클라우드에 배포할 수 있습니다. CLI 명령어를 통해 손쉽게 배포 과정을 진행할 수 있으며, 필요한 설정과 단계는 등 Encore의 공식 문서를 참조하세요.
결론
이번 튜토리얼에서는 Encore.ts와 TypeScript를 활용하여 온라인 설문 시스템을 구축하는 과정을 살펴보았습니다. Encore.ts의 강력한 기능을 활용하면 단순한 개인 프로젝트부터 대규모 시스템까지 손쉽게 확장할 수 있습니다. 링크를 참조하여 더 많은 기술 문서를 확인해보세요!
참고링크