[Project] Twitter ์ฑ (Vue.js) ๐ฆ
[Project] Toy ํ๋ก์ ํธ ํ๊ณ ๐
๐ฆ Twitter
ํด๋น ์๋น์ค๋ Twitter ๋ฅผ ํด๋ก ํ ํ๋ก์ ํธ๋ก
๊ฒ์๋ฌผ์ ์์ฑ ๋ฐ ์กฐํํ๋ฉฐ
์ํ๋ ๊ฒ์๋ฌผ์ ์ข์์ ๊ธฐ๋ฅ์ ํตํด
์ ์ ๋ค์ ๋ฐ์์ ํ์ธํ ์ ์๋ ์๋น์ค ์
๋๋ค.
PipeLine ๐ฎ
![]()
ํ๋ก์ ํธ ๊ตฌ์ฑ ๐ฑ
ํ๋ก์ ํธ ๊ธฐ๊ฐ (7/3 ~ 7/7)
- Front-end
Vue.jsํ๋ ์์ํฌ์ธQuasar๋ก ์น ํ์ด์ง UI/UX ๊ตฌ์ฑ - Back-end
firebase์Firestore๋ก ์ ์ ๋ฐ ๊ฒ์๋ฌผ DB ๊ด๋ฆฌ
๊ธฐ๋ฅ์๊ฐ ๐จ
Home ํญ๊ณผ About ํญ์ผ๋ก
๋ ํ์ด์ง๋ฅผ ๋ผ์ฐํ
๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ๊ตฌ์ฑํ์ง๋ง,
ํ์ฌ๋ ๋จ์ผ ํ์ด์ง ๊ตฌ์ฑ์ผ๋ก
์ต๋ํ Twitter ์ ์ ์ฌํ๊ฒ ๊ตฌ์ฑํ๋ ค ๊ธฐํํ์์ต๋๋ค.
![]()
๋ฐ์ํ ์ฌ์ด์ฆ๋ก 1024px ์ดํ์ด๊ฑฐ๋, ๋ชจ๋ฐ์ผ ํ๊ฒฝ์์ ์คํ ์ UI ๊ฐ ๋ณ๊ฒฝ๋๋๋ก ์ค์ ํ์์ต๋๋ค.
![]()

Post
Firestore ๋ฅผ ํตํด ๊ฒ์๋ฌผ์ ์์ฑํ ๋๋ง๋ค ๋ฌธ์๋ฅผ ์ถ๊ฐํ๊ณ ,
์ ๊ฑฐ ์ ์ค์๊ฐ์ผ๋ก DB ์ ๋ฐ์๋๋๋ก ๊ตฌํํ์์ต๋๋ค.
Like
UI ์์ ํํธ ์ด๋ชจ์ง๋ฅผ ํด๋ฆญ ์ Toggle ๋์ด
์๊น์ด ๋ณ๊ฒฝ๋๋ฉฐ ์ด๋ฅผ Firestore ์์๋ ์ค์๊ฐ ๋ฐ์๋๊ฒ ๊ตฌํํ์์ต๋๋ค.

Github ์์ค์ฝ๋
> https://github.com/wavescats/Twitter_App
๊ฐ๋ฐํ๊ณ ๐ก
์๋ก ์
์ฌํ ๊ธฐ์
์์
React ๊ฐ ์๋ Vue.js ๋ก ํ๋ก์ ํธ๋ฅผ ์งํํ๊ณ ์์ด
Vue.js ๋ฅผ ๊ณต๋ถํ๋ ์ค
instagram ์ ์ ์ํ ๊ธฐ์
์ธ
meta ์์ ์๋ก์ด ํ ์ค์ ์์
๋ฏธ๋์ด ํ๋ซํผ์ธ โ์ค๋ ๋(Threads)โ ๊ฐ ์ถ์ํ์๊ณ ,
์ด์ ๊ฐ๋ช
์ ๋ฐ์
Twitter ์ฑ์ ํด๋ก ํด ๋ณด๋ Toy Project ๋ฅผ ์งํํ์ต๋๋ค.
์์ฌ์ ๋ ์ & ๋ณด์ํด์ผ ํ ์ฌํญ
DateTime
์๋ก์ด ๊ฒ์๋ฌผ ์์ฑ ์ date-fns ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ
"3 minute ago" ํํ๋ก ๊ตฌํํ๋ ค ํ์ง๋ง
์๊ฐํ๋๋ก ์ ๋์ง ์์ ์ถํ ๊ฐ์ ํด์ผ ํ ๋ถ๋ถ์ผ๋ก ๋จ๊ฒจ๋์์ต๋๋ค.
Authentication
์ ์ ๋ค์ DB ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํ์ฌ
ํ์๊ฐ์
๋ฐ ๋ก๊ทธ์ธ๊ธฐ๋ฅ์ ์ถ๊ฐํ ๊ณํ์ ๊ฐ๊ณ ์์ต๋๋ค.
์ฌ์ฉ์์ ํธ์๋ฅผ ์ํ์ฌ ์์
๋ก๊ทธ์ธ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ ค๊ณ ํฉ๋๋ค.
Reference ๐
https://youtu.be/la-0ulfn0_M<br
https://date-fns.org/
https://firebase.google.com/docs/firestore/using-console?hl=ko&authuser=0
https://about.instagram.com/ko-kr/blog/announcements/introducing-threads-app