PocketBase – 단일 파일로 제공되는 오픈소스 실시간 백엔드

1 week ago 5

  • PocketBase는 데이터베이스, 인증, 파일 저장소, 관리 대시보드를 포함한 단일 파일형 오픈소스 백엔드
  • 스키마 빌더, 데이터 검증, 실시간 구독, REST API를 갖춘 내장형 고성능 데이터베이스 구조
  • 이메일/비밀번호 및 OAuth2 로그인(Google, Facebook, GitHub, GitLab) 지원으로 사용자 관리 간소화
  • 로컬 또는 S3 스토리지에 파일을 안전하게 저장하고, 데이터베이스 레코드에 미디어를 연결해 썸네일 자동 생성 가능
  • 독립 실행형 앱 또는 Go·JavaScript 확장 가능한 프레임워크로 활용 가능해, 경량 맞춤형 백엔드 구축에 유용

PocketBase 개요

  • PocketBase는 단일 실행 파일로 동작하는 오픈소스 백엔드 플랫폼
    • 데이터베이스, 인증, 파일 저장, 관리 대시보드를 통합 제공
    • 별도 서버 구성 없이 빠르게 실행 가능한 구조

데이터베이스 기능

  • 스키마 빌더데이터 검증, 실시간 구독, REST API를 지원하는 내장형 데이터베이스 포함
    • 실시간 데이터 변경 감지 및 구독 기능 제공
    • REST API를 통해 손쉽게 데이터 조회, 생성, 수정, 삭제 가능

사용자 인증

  • 앱 사용자 관리 및 이메일/비밀번호 기반 로그인 지원
  • OAuth2 인증을 통해 Google, Facebook, GitHub, GitLab 계정으로 가입 및 로그인 가능

파일 저장소

  • 파일을 로컬 또는 S3 스토리지에 안전하게 저장 가능
    • 데이터베이스 레코드에 미디어 파일을 첨부할 수 있음
    • 업로드 시 썸네일 자동 생성 기능 제공

확장성과 개발자 지원

  • PocketBase는 독립 실행형 애플리케이션으로 사용하거나, Go 및 JavaScript 훅(hook) 을 통해 확장 가능한 프레임워크로 활용 가능
    • 개발자는 자체 로직을 추가해 맞춤형 백엔드 구현 가능

JavaScript SDK 예시

  • JavaScript SDK를 통해 PocketBase 서버와 상호작용 가능
    • 예시 코드에서는 example 컬렉션의 레코드 목록 조회, 단일 레코드 조회·삭제·생성, 실시간 구독 및 구독 해제 기능을 보여줌
    • pb.collection('example').getList(), getOne(), create(), delete(), subscribe() 등의 메서드 제공

Read Entire Article