
안녕하세요! 지난 1탄에서는 Firebase 프로젝트를 만들고, HTML로 앱의 뼈대를 세우는 작업을 했습니다. 오늘은 드디어 이 뼈대에 살을 붙여 앱을 실제로 살아 움직이게 만드는 시간입니다!
로그인, 회원가입, 글쓰기, 사진 올리기, 선생님의 승인 기능까지! 자바스크립트 코드로 모든 기능을 완성하고, 마지막으로 우리 앱을 진짜 인터넷 주소로 세상에 공개하는 방법까지 함께 알아볼게요.

본격적으로 기능을 만들기 전, 아주 중요한 작업이 있습니다. 바로 우리 앱의 '보안 규칙'을 정하는 일이에요. 이 규칙이 없으면 아무나 우리 집에 들어와 데이터를 망가뜨릴 수 있어요.
1. 데이터베이스(Firestore) 규칙 설정
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}
2. 사진 저장소(Storage) 규칙 설정
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if request.auth != null;
}
}
}
이제 1탄에서 만들었던 global.html 파일의 <script type="module"> 태그 안을 채워나갈 시간입니다. 우리가 함께 완성했던 앱 코드의 <script> 태그 안 내용을 모두 복사해서 붙여넣어 주세요. (이전 대화의 완성된 코드를 사용하세요!)
이 코드가 바로 회원가입, 글쓰기, 승인 등 모든 실제 기능을 담당하는 '마법 주문'입니다.
우리 앱은 코드가 특정 사용자를 선생님으로 인식해야 '승인/반려' 버튼이 나타납니다.
const TEACHER_UID = "여기에_복사한_선생님_UID를_붙여넣으세요";
이제 이 계정으로 로그인하면, 선생님에게만 보이는 관리자 기능이 활성화됩니다!
지금까지는 내 컴퓨터에서만 앱을 볼 수 있었죠. 이제 모두가 쓸 수 있는 진짜 인터넷 주소를 만들 차례입니다. 조금 낯설 수 있는 '터미널' 작업을 할 거지만, 그대로 따라만 하시면 됩니다!
1. 준비 작업 (내 컴퓨터에 딱 한 번만)
2. 배포 과정
이제 public 폴더 안에 있는 index.html 파일을 여러분이 만든 global.html의 내용으로 바꾸고 다시 firebase deploy를 하면, 여러분의 앱이 진짜로 나타납니다!
축하합니다! 여러분은 직접 기획하고, 개발하고, 배포까지 마친 하나의 완벽한 웹 앱을 갖게 되셨습니다. 이 과정을 통해 꼭 개발자가 아니더라도 누구나 자신만의 아이디어를 현실로 만들 수 있다는 자신감을 얻으셨기를 바랍니다.
이제 이 앱을 기반으로 점수 체계를 바꾸거나, 새로운 레벨을 추가하거나, 디자인을 바꿔보는 등 자유롭게 여러분만의 앱으로 발전시켜 나가보세요!
| 티스토리 블로그에 개인 도메인 연결하는 완벽 가이드 (+ SSL 빨간 경고창 해결법) (0) | 2026.03.29 |
|---|---|
| firebase 바이브 코딩으로 챌린지앱 만들기(3) (1) | 2025.06.26 |
| firebase 바이브 코딩으로 챌린지앱 만들기(1) (0) | 2025.06.22 |
| Firebase로 나만의 웹 앱 만들기 (3부) (1) | 2025.06.19 |
| Firebase로 나만의 웹 앱 만들기 (2부) (0) | 2025.06.18 |