โฐ [Ver1] 30๋ถ„ ๊ฐœ๋ฐœ ๋ฐ ํšŒ๊ณ  - Firebase, Supabase

โœŒ๐Ÿป ํšŒ๊ณ 

์–ด์ œ ๋ฐฉ๋ช…๋ก UI๋ฅผ ๋งŒ๋“ค์—ˆ์œผ๋‹ˆ,

์ด์ œ๋Š” ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ง„์งœ๋กœ ์ €์žฅํ•  ๋ฐฑ์—”๋“œ ์ชฝ์„ ๊ฑด๋“œ๋ ค์•ผ ํ•  ์ฐจ๋ก€๋‹ค.

 

๊ทผ๋ฐ ๋ฌธ์ œ๋Š”…

Firebase? Supabase? ์ด๊ฒŒ ๋ญ”๋ฐ? ์ฒ˜์Œ ๋“ค์–ด๋ณด๋Š” ๋‹จ์–ด๋“ค์ด๋ผ๋Š” ๊ฑฐ๋‹ค.

 

๋‚˜๋Š” ์ด ๋‘ ๊ฐ€์ง€์— ๋Œ€ํ•ด ์•„์˜ˆ ์‚ฌ์ „ ์ง€์‹์ด ์—†์—ˆ๋‹ค.

๋Œ€์ถฉ ์ฐพ์•„๋ณด๋‹ˆ๊นŒ

Firebase์™€ Supabase๋Š” ๋ฐฑ์—”๋“œ๋ฅผ ์–ด๋А ์ •๋„ ๋Œ€์‹ ํ•ด์ฃผ๋Š” ์„œ๋น„์Šค์˜€๋‹ค.

์‹ฌ์ง€์–ด ์ธ์ฆ, DB ์ €์žฅ, ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ ๊ฐ™์€ ๊ธฐ๋Šฅ๋„ ํƒ‘์žฌ๋ผ ์žˆ์–ด์„œ

์ง„์งœ๋กœ ์„œ๋ฒ„ ์—†์ด๋„ ๊ธฐ๋Šฅ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹จ๋‹ค… 

 

์ผ๋‹จ์€ ๊ตฌ๊ธ€๋ง์œผ๋กœ ๊ฐœ๋…์„ ์–ด์„คํ”„๊ฒŒ ํก์ˆ˜ํ•œ ๋’ค,

์ข€ ๋” ์ฒด๊ณ„์ ์œผ๋กœ ๋ฐฐ์šฐ๊ธฐ ์œ„ํ•ด ์ธ๊ฐ•์„ ์ฐพ์•˜๋‹ค.

 

๋งˆ์นจ ์ธํ”„๋Ÿฐ์—

“Firebase๋ณด๋‹ค 10๋ฐฐ ์ข‹์€ Supabase”๋ผ๋Š” ๋ฌด๋ฃŒ ๊ฐ•์˜๊ฐ€ ๋”ฑ!

๋ฐ”๋กœ ์ˆ˜๊ฐ• ์‹ ์ฒญํ–ˆ๋‹ค.

 

๋ฌธ์ œ๋Š”… 30๋ถ„ ํ”„๋กœ์ ํŠธ์ธ๋ฐ, ๊ฐ•์˜๊ฐ€ 2์‹œ๊ฐ„์ด๋‹ค.

 

“์•„๋‹ˆ, ๊ทธ๋Ÿผ ๋ฐฉ๋ช…๋ก ๋ง๊ณ  ๋‹ค๋ฅธ ๊ฑธ ํ–ˆ์–ด์•ผ ํ–ˆ๋‚˜?” ๋ผ๋Š” ์ƒ๊ฐ๋„ ์Šค์ณค๋‹ค.

์‚ฌ์‹ค ์ง€๊ธˆ๊นŒ์ง€๋Š” ํฌ๊ฒŒ ๊ธฐํš ์—†์ด ๋ฌด์ž‘์ • ๋‹ฌ๋ฆฐ ํ”„๋กœ์ ํŠธ์˜€๊ธฐ์—

๋‹น์žฅ ์˜ค๋Š˜ ๋ญ˜ ํ•ด์•ผ ํ• ์ง€, ์–ด๋–ค ํ๋ฆ„์œผ๋กœ ์ด์–ด๊ฐ€์•ผ ํ• ์ง€ ๊ณ„์† ํ”๋“ค๋ฆฐ๋‹ค.

์ด๊ฑด ์ง„์ง€ํ•˜๊ฒŒ, ํ•œ๋ฒˆ ๋ฐฉํ–ฅ์„ฑ์„ ์žก๋Š” ๊ณ ๋ฏผ์˜ ์‹œ๊ฐ„์ด ํ•„์š”ํ• ์ง€๋„ ๋ชจ๋ฅด๊ฒ ๋‹ค.

 

ํ•˜์ง€๋งŒ ์ผ๋‹จ์€ ์˜ค๋Š˜์€ ์•„๋‹ˆ๋‹ค.

์˜ค๋Š˜์€ Supabase ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ , ๊ฐœ๋…์„ ์ตํžˆ๊ณ , ํ•™์Šต ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜๋Š” ๊ฒƒ๊นŒ์ง€ ํ•ด๋ณด์ž.

๋ฌผ๋ก  30๋ถ„์ด๋ผ๋Š” ์‹œ๊ฐ„์œผ๋กœ๋Š” ์–ด๋ฆผ๋„ ์—†๊ฒ ์ง€๋งŒ…

 

๊ทธ๋ž˜๋„ ์ด๊ฑธ ์ตํžˆ๊ฒŒ ๋œ๋‹ค๋ฉด,

๋‚˜์˜ ๊ธฐ์ˆ  ์Šคํƒ์— “Supabase”๋ผ๋Š” ์Šคํƒ์„ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ ์•„๋‹Œ๊ฐ€?

 

์•”ํŠผ ์กฐ๋งŒ๊ฐ„ ๊ธฐํš์„ ๋‹ค์‹œ ํ•˜๋˜ ๊นŠ๊ฒŒ ์ƒ๊ฐํ•ด์„œ ๋ฐฉํ–ฅ์„ ์ •ํ•ด๋ณด์ž.


๐Ÿ“š ์ •๋ฆฌ

Firebase์™€ Supabase

  • ๋‘˜ ๋‹ค “BaaS(Backend as a Service)”
  • ์ฆ‰ ๋ฐฑ์—”๋“œ๋ฅผ ๋Œ€์‹  ์ œ๊ณตํ•ด์ฃผ๋Š” ์„œ๋น„์Šค

BaaS๋ž€?

  • ์„œ๋ฒ„, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ๋กœ๊ทธ์ธ, ํŒŒ์ผ ์—…๋กœ๋“œ ๊ฐ™์€ ๋ฐฑ์—”๋“œ ๊ธฐ๋Šฅ๋“ค์„ ์ฝ”๋“œ ๋ช‡ ์ค„๋งŒ์œผ๋กœ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ฃผ๋Š” ํ”Œ๋žซํผ

 

Firebase๋ž€?

  • Google์ด ๋งŒ๋“  BaaS ์„œ๋น„์Šค
  • ๋น ๋ฅด๊ฒŒ ์•ฑ์„ ๋งŒ๋“ค๊ณ  ๋ฐฐํฌํ•˜๋Š” ๋ฐ ์ตœ์ ํ™”

 ํŠน์ง•

  • NoSQL ๊ธฐ๋ฐ˜ (Firestore, Realtime Database)
  • Google ๊ณ„์ • ๊ธฐ๋ฐ˜์˜ ๊ฐ„ํŽธํ•œ ๋กœ๊ทธ์ธ ์‹œ์Šคํ…œ ์ œ๊ณต
  • ๋ชจ๋ฐ”์ผ ์•ฑ, ์›น์•ฑ ๋ชจ๋‘ ์ง€์›
  • ๊ตฌ๊ธ€ ์ƒํƒœ๊ณ„์™€ ์—ฐ๋™ (FCM, Analytics ๋“ฑ)

๋Œ€ํ‘œ ๊ธฐ๋Šฅ

๊ธฐ๋Šฅ ์„ค๋ช…
Firestore / Realtime DB ํด๋ผ์šฐ๋“œ NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (์‹ค์‹œ๊ฐ„ ๋™๊ธฐํ™” ๊ฐ€๋Šฅ)
Authentication ์ด๋ฉ”์ผ, ๊ตฌ๊ธ€, ๊นƒํ—ˆ๋ธŒ ๋“ฑ์œผ๋กœ ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ
Cloud Storage ์ด๋ฏธ์ง€, ํŒŒ์ผ ์—…๋กœ๋“œ
Cloud Functions ์„œ๋ฒ„๋ฆฌ์Šค ํ•จ์ˆ˜ (๋ฐฑ์—”๋“œ ๋กœ์ง ์ฒ˜๋ฆฌ์šฉ)
Hosting ์ •์  ์›น์‚ฌ์ดํŠธ ๋ฐฐํฌ ๊ฐ€๋Šฅ

 

Supabase๋ž€?

  • Firebase๋ฅผ ๋ฒค์น˜๋งˆํ‚นํ•ด์„œ ๋งŒ๋“  SQL ๊ธฐ๋ฐ˜ BaaS
  • ์˜คํ”ˆ์†Œ์Šค์ด๊ณ , ํ•ต์‹ฌ์€ PostgreSQL

ํŠน์ง•

  • Firebase์™€ ๋น„์Šทํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–๊ณ  ์žˆ์Œ
  • ํ•˜์ง€๋งŒ ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” PostgreSQL → SQL ์ฟผ๋ฆฌ๋กœ ์ต์ˆ™ํ•˜๊ฒŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • GitHub์—์„œ ์˜คํ”ˆ์†Œ์Šค๋กœ ์šด์˜ (์ง์ ‘ ์„ค์น˜ ๊ฐ€๋Šฅ!)
  • ์‹ค์‹œ๊ฐ„ ๊ธฐ๋Šฅ๋„ ์žˆ์Œ (PostgreSQL → WebSocket ํ™œ์šฉ)

๋Œ€ํ‘œ ๊ธฐ๋Šฅ

๊ธฐ๋Šฅ ์„ค๋ช…
Database PostgreSQL (SQL ์ฟผ๋ฆฌ ์‚ฌ์šฉ ๊ฐ€๋Šฅ)
Auth OAuth2 (๊ตฌ๊ธ€, ๊นƒํ—ˆ๋ธŒ ๋“ฑ) + ์ด๋ฉ”์ผ ๋กœ๊ทธ์ธ
Storage ํŒŒ์ผ ์—…๋กœ๋“œ ๋ฐ ์ ‘๊ทผ ์ œ์–ด
Realtime ํ…Œ์ด๋ธ” ๋ณ€๊ฒฝ ์‹œ ์‹ค์‹œ๊ฐ„ ๊ตฌ๋… ๊ฐ€๋Šฅ
Edge Functions ์„œ๋ฒ„๋ฆฌ์Šค ๋ฐฑ์—”๋“œ ์ฝ”๋“œ ์‹คํ–‰ ๊ฐ€๋Šฅ
Dashboard Firebase๋ณด๋‹ค UI ๊น”๋” + ์ง๊ด€์ 

 

Firebase vs Supabase ๋น„๊ต

ํ•ญ๋ชฉ Firebase Supabase
๊ฐœ๋ฐœ์‚ฌ Google Supabase (์˜คํ”ˆ์†Œ์Šค ๊ธฐ๋ฐ˜)
DB ๊ตฌ์กฐ NoSQL (๋ฌธ์„œ ๊ธฐ๋ฐ˜) SQL (PostgreSQL)
์ฟผ๋ฆฌ ๋ฐฉ์‹ ์ž์œ ๋„ ๋†’์ง€๋งŒ ๋ณต์žกํ•จ SQL ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
์‹ค์‹œ๊ฐ„ ๊ธฐ๋Šฅ Realtime Database, Firestore PostgreSQL ๊ธฐ๋ฐ˜ Realtime
์ธ์ฆ ์‹œ์Šคํ…œ ๊ฐ•๋ ฅํ•จ (Google ๋กœ๊ทธ์ธ ๋“ฑ ๋‹ค์–‘) ๋‹ค์–‘ํ•จ (OAuth, Magic Link ๋“ฑ)
์˜คํ”ˆ์†Œ์Šค ์—ฌ๋ถ€ โŒ X โœ… GitHub ๊ณต๊ฐœ
์ง์ ‘ ์„ค์น˜ ๊ฐ€๋Šฅ? โŒ ๋ถˆ๊ฐ€ โœ… ๊ฐ€๋Šฅ (์ž์ฒด ์„œ๋ฒ„์—์„œ ์šด์˜ ๊ฐ€๋Šฅ)
์ž์œ ๋„/์œ ์—ฐ์„ฑ ๊ตฌ๊ธ€ ์ธํ”„๋ผ์— ์ข…์† (Lock-in) ์›ํ•˜๋Š” ๋Œ€๋กœ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ฐ€๋Šฅ

 

์ƒํ™ฉ๋ณ„ ์ถ”์ฒœ

์ƒํ™ฉ ์ถ”์ฒœ ํ”Œ๋žซํผ ์ด์œ 
๋น ๋ฅด๊ฒŒ MVP ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค โœ… Firebase ์…‹์—… ๋น ๋ฆ„, ์ดˆ๋ณด์ž์—๊ฒŒ ์นœํ™”์ 
SQL ์ฟผ๋ฆฌ๋ฅผ ์ž์œ ๋กญ๊ฒŒ ์“ฐ๊ณ  ์‹ถ๋‹ค โœ… Supabase PostgreSQL ๊ธฐ๋ฐ˜์ด๋ผ ์ต์ˆ™ํ•œ ์ฟผ๋ฆฌ ๊ฐ€๋Šฅ
์˜คํ”ˆ์†Œ์Šค, ์ž์œ ๋„ ์ค‘์š”ํ•˜๋‹ค โœ… Supabase ์ง์ ‘ ํ˜ธ์ŠคํŒ…๋„ ๊ฐ€๋Šฅ, ๋ฐ์ดํ„ฐ ์ฃผ๊ถŒ ↑
๊ตฌ๊ธ€ ์ƒํƒœ๊ณ„๋ฅผ ์“ธ ์˜ˆ์ •์ด๋‹ค โœ… Firebase FCM, Analytics, Play์™€ ์—ฐ๋™ ์ข‹์Œ
์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ + ์ฟผ๋ฆฌ ํ•„์š” โœ… Supabase ์‹ค์‹œ๊ฐ„ + SQL ๋ณ‘ํ–‰ ๊ฐ€๋Šฅ