00:00:00Firebase는 정말 멋진 도구지만, 앱이 본격적으로 성장하기 시작하면 상황이 달라집니다.
00:00:03사용자가 늘고 트래픽이 치솟으면, 갑자기 백엔드 성능이 아니라
00:00:09비용이 큰 문제로 다가오죠.
00:00:10설상가상으로 백엔드에 대한 제어권이 본인이 아닌 Firebase에 있다는 사실을 깨닫게 됩니다.
00:00:14하지만 인증, 데이터베이스, 스토리지, 실시간 함수 같은 장점은 그대로 유지하면서
00:00:19데이터 소유권은 지키고 직접 운영할 수 있다면 어떨까요?
00:00:24이것이 바로 지난 한 해 동안 수많은 개발자가 갈아탄 오픈 소스, Appwrite입니다.
00:00:29단 몇 분 만에 설정하는 방법을 함께 알아보겠습니다.
00:00:37Firebase가 인증, 실시간 데이터베이스, 스토리지, 메시징 등 유용한 기능을 제공한다는 건 잘 알고 계실 겁니다.
00:00:43그래서 많은 개발자가 거기서 시작하죠.
00:00:45Appwrite는 이러한 핵심 구성 요소에 팀 관리, 셀프 호스팅, 메시징 제공업체,
00:00:52심지어 AI 도구까지 제공합니다.
00:00:54차이점은 간단합니다.
00:00:55여러분의 서버, VPS, 환경에서 여러분의 규칙대로 운영된다는 것이죠.
00:00:59개발 워크플로우를 앞당겨주는 이런 오픈 소스 도구가 마음에 드신다면
00:01:03Better Stack 채널을 꼭 구독해 주세요.
00:01:05Appwrite를 사용하면 이메일, OAuth, 매직 링크, 익명 로그인,
00:01:10그리고 MFA 인증까지 지원됩니다.
00:01:12문서형과 관계형 구조가 혼합된 실시간 데이터베이스도 제공하죠.
00:01:15파일 변환 기능이 포함된 스토리지도 있습니다.
00:01:1713개 이상의 언어를 지원하는 서버리스 함수와 푸시, 이메일, SMS 메시징 등 모든 핵심 기능을 갖췄습니다.
00:01:24셀프 호스팅이나 클라우드 방식 중 선택해서 사용할 수 있습니다.
00:01:27여기서 사람들을 가장 놀라게 하는 부분이 있습니다.
00:01:28이토록 강력한 기능을 갖추고도 셀프 호스팅이 정말 쉽다는 점이죠.
00:01:32말로만 설명하기보다
00:01:34실제로 구동해서 프로젝트에 Appwrite를 어떻게 통합하는지 직접 보여드리겠습니다.
00:01:39첫 단계는 간단합니다.
00:01:41Docker가 실행 중인지 확인하세요.
00:01:43그다음 터미널에서 이 명령어를 입력하고
00:01:46Docker Compose 명령을 실행하겠습니다.
00:01:49그게 끝입니다.
00:01:50백엔드 설정이 이미 완료되었습니다.
00:01:51준비가 다 된 거죠.
00:01:52계정을 새로 만들거나 기존 Appwrite 계정으로 로그인할 수 있는 페이지가 나타납니다.
00:01:58이제 새 프로젝트를 만들어 보겠습니다.
00:02:00데모용으로 보여드릴 거라 이름을 "TodoApp"이라고 지을게요.
00:02:04그런 다음 프로젝트 ID를 복사합니다.
00:02:06나중에 ENV 파일에 추가해야 하니 지금 저장해 두거나
00:02:10바로 ENV 파일에 붙여넣으셔도 됩니다.
00:02:13다음으로 로컬 개발을 위한 웹 플랫폼을 추가하겠습니다.
00:02:16Auth 메뉴에서 웹 앱을 선택하고 플랫폼 추가를 누릅니다.
00:02:19호스트 이름을 localhost로 설정하고 그대로 저장하겠습니다.
00:02:23이제 데이터베이스를 설정하고 컬렉션을 생성해 보죠.
00:02:26데이터베이스 전체에서 컬렉션은 테이블과 같다고 보시면 됩니다.
00:02:30필요한 만큼 열(column)을 생성할 수 있습니다.
00:02:33이번에는 이메일, 제목, 내용,
00:02:38그리고 사용자 ID 정도를 사용해 보겠습니다.
00:02:40여기서 권한을 설정할 수 있습니다.
00:02:42"Any"는 로그인 여부와 관계없이 누구에게나 해당합니다.
00:02:45읽기 권한만 부여하도록 하죠.
00:02:48나머지 권한은 로그인한 사용자에게만 주겠습니다.
00:02:51투두 리스트니까요.
00:02:52읽기, 수정, 삭제 같은 기본적인 CRUD 작업을 설정합니다.
00:02:57백엔드에서 이 모든 걸 직접 처리해 준다는 게 Appwrite의 가장 큰 장점 중 하나입니다.
00:03:02정말 간편하죠.
00:03:03체크박스 몇 개만 선택하면 되거든요.
00:03:05이제 코드에 연결해 보겠습니다.
00:03:06엔드포인트와 프로젝트 ID, 데이터베이스 ID,
00:03:10테이블 이름을 프로젝트의 ENV 파일에 직접 추가합니다.
00:03:16완전한 백엔드 구축처럼 보이지만, 실제로는 Appwrite에서 구성한 몇 가지 정보를
00:03:20코드에 연결했을 뿐입니다.
00:03:23좋습니다.
00:03:24이제 테스트해 볼까요?
00:03:25실행해 보겠습니다.
00:03:26여기서 새 사용자 계정을 하나 만들게요.
00:03:29회원가입을 진행합니다.
00:03:30로그인한 뒤에 실제로 할 일을 등록해 보겠습니다.
00:03:33제목과 설명을 대충 입력하고
00:03:37추가 버튼을 누릅니다.
00:03:38짜잔!
00:03:39오류 없이 잘 작동하는 게 보이시죠?
00:03:41데이터가 애플리케이션으로 전송되고 있습니다.
00:03:43Appwrite 대시보드로 돌아가면 데이터가 들어온 걸 확인할 수 있습니다.
00:03:48이제 탭 두 개를 띄워서 한쪽은 로그인을 하고,
00:03:53다른 한쪽은 로그인을 하지 않아 보겠습니다.
00:03:54첫 번째 탭에서 데이터를 전송하면, 비로그인 사용자도 볼 수 있는
00:03:59읽기 전용 필드가 설정된 두 번째 탭에도 데이터가 나타납니다.
00:04:03아주 적은 양의 코드로 인증 기능을 포함한 모든 데이터가 동기화되었습니다.
00:04:08데이터베이스에 저장된 내용을 가져와서
00:04:13여러 페이지에 걸쳐 보여줄 수 있는 거죠.
00:04:14그렇다면 왜 개발자들이 Appwrite로 이동하는 걸까요?
00:04:17첫 번째 이유는 명확합니다.
00:04:18바로 소유권입니다.
00:04:19여러분이 직접 데이터를 소유하게 되니까요.
00:04:21이것은 오픈 소스 프로젝트이며
00:04:23데이터를 더 안전하게 보호할 수 있게 해줍니다.
00:04:25또한 사용자당 과금되는 방식이 아닙니다.
00:04:27Firebase나 Supabase로 서비스를 키우다 보면 숨겨진 비용이 발생하기 마련이죠.
00:04:31완전히 숨겨진 건 아니더라도, 규모에 따른 비용 부담은 무시할 수 없습니다.
00:04:35Appwrite가 제공하는 대부분의 기능은
00:04:39이미 Firebase나 Supabase에도 있는 것들입니다.
00:04:40기능 면에서 부족할 게 전혀 없다는 뜻이죠.
00:04:42셀프 호스팅이나 클라우드 중 선택할 수 있고, React나 Flutter 같은
00:04:47환경을 위한 SDK도 아주 훌륭합니다.
00:04:49다시 말하지만, 결국 오픈 소스입니다.
00:04:51완벽하진 않을 수 있지만, 개발자라면 대부분의 문제는 금방 해결할 수 있을 겁니다.
00:04:55큰 걸림돌이 되지는 않을 거예요.
00:04:57Docker를 알아야 한다는 조건이 있지만, 그건 배우기 쉽죠.
00:05:01Docker만 안다면 정말 빠르게 구축할 수 있는 최고의 도구입니다.
00:05:05자체적인 글로벌 CDN이나 에지 함수 기능은 없습니다.
00:05:07필요하다면 Cloudflare 같은 서비스와 통합해서 사용해야 합니다.
00:05:10데이터베이스는 MariaDB 기반입니다.
00:05:13Supabase처럼 Postgres를 사용하지는 않죠.
00:05:16그리고 규모를 크게 키우려면 별도의 모니터링 시스템이 필요할 텐데,
00:05:20이건 어떤 셀프 호스팅 도구를 쓰더라도 마찬가지입니다.
00:05:22바로 이 지점에서 Better Stack 같은 도구가 제 역할을 톡톡히 해냅니다.
00:05:26그래서 이 서비스를 실제로 써야 할까요? 혹은 누구에게 적합할까요?
00:05:30늘어나는 비용을 줄이려는 개발자나 스타트업이라면
00:05:35정말 탁월한 선택이 될 겁니다.
00:05:36정말 매력적이죠.
00:05:37개인 정보 보호를 중시하고 제어권을 직접 갖고 싶어 한다면 역시 추천합니다.
00:05:40좋은 SDK를 원하는 Flutter나 모바일 개발자들에게도
00:05:44아주 유용할 거예요.
00:05:45비용을 획기적으로 낮출 수 있다는 점을 기억하세요.
00:05:47돈을 아끼고 싶은 분들이라면 누구에게나
00:05:49아주 멋진 도구가 될 것입니다.
00:05:52Firebase는 너무 비싸게 느껴지고, Supabase는 구성 요소가 너무 많아 복잡해 보인다면
00:05:56Appwrite가 그 중간에서 딱 좋은 대안이 될 수 있습니다.
00:06:00그게 바로 2026년에 Appwrite가 강력한 옵션으로 꼽히는 이유죠.
00:06:04단 몇 분 만에 백엔드를 구축하고 모든 것을 동기화해 보았습니다.
00:06:08Firebase나 Supabase의 대안을 찾는 개발자들에게 왜 좋은 선택인지도 알아봤고요.
00:06:13직접 시도해 보고 싶으시다면 설명란에 링크와 문서를 남겨두었으니 확인해 보세요.
00:06:18구동하는 데 몇 분도 걸리지 않습니다.
00:06:20충분히 시도해 볼 가치가 있죠.
00:06:21이런 코딩 영상과 오픈 소스 도구 소개가 마음에 드신다면
00:06:25Better Stack 채널 구독 잊지 마세요.
00:06:27그럼 다음 영상에서 뵙겠습니다.