Skip to content

ad105geppetto/studylog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

285 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

unknown (2)

๐Ÿ‹ Welcome

๋ณธ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋Š” ์ฝ”๋“œ์Šคํ…Œ์ด์ธ (๋ถ€ํŠธ์บ ํ”„) ์ˆ˜๋ฃŒ ์ดํ›„, ๊ฐœ์„  ๋ฐ ์ถ”๊ฐ€ ์‚ฌํ•ญ๋“ค์„ ๋ฐ˜์˜ํ•˜๋ฉด์„œ ๊ทธ ๊ธฐ๋ก๋“ค์„ ๋‚จ๊ธด ๊ณณ์ž…๋‹ˆ๋‹ค.

โœ๏ธ Intro

ํ”„๋กœ์ ํŠธ๋ช…: Studylog

ํŒ€ ๊ตฌ์„ฑ: ํ”„๋ก ํŠธ 2๋ช…, ๋ฐฑ์•ค๋“œ 2๋ช… (๋ฐฑ์•ค๋“œ ๊ฐœ๋ฐœ์ž๋กœ์„œ ์ฐธ์—ฌ)

๋ฐฐํฌ Link: https://studylog.tk/

  • ํ˜„์žฌ AWS ๋น„์šฉ ๋ฌธ์ œ๋กœ ์ธํ•ด ๋ฐฐํฌ๋ฅผ ์ค‘์ง€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•„์š”ํ•˜์‹œ๋ฉด ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์‹  ํ›„ ํ™•์ธํ•ด์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

โœ๏ธย About

โ€œStudyLog์—์„œ ๋ชจ๊ฐ๊ณต(๋ชจ์—ฌ์„œ ๊ฐ์ž ๊ณต๋ถ€)ํ•˜์ž!โ€

์Šคํ„ฐ๋””์นดํŽ˜์— ๊ฐ€๊ธฐ๋Š” ๊ท€์ฐฎ๊ณ  ํ˜ผ์žํ•˜์ž๋‹ˆ ์ง‘์ค‘์ด ์ž˜ ์•ˆ๋˜์‹œ๋‚˜์š”?

StudyLog์—์„œ๋Š” ํ•จ๊ป˜ ๊ณต๋ถ€๋„ ํ•˜๊ณ  ๊ธฐ๋ก๋„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“š STACKS

CLIENT

SERVER

AWS

๐Ÿ“Œ Install

## Client์™€ Server ๊ฐ๊ฐ์˜ ํด๋”์—์„œ ์„ค์น˜
$ npm install

๐Ÿ“Œ Settings

Client

## Client์˜ .env.example ํŒŒ์ผ๋ช…์„ .env๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์‚ฌ์šฉ
## .env ์•ˆ์— ๋“ค์–ด๊ฐˆ ๋‚ด์šฉ
REACT_APP_SERVER=http://localhost:4000
REACT_APP_GOOGLE_CLIENT_ID= ๊ตฌ๊ธ€ ํด๋ผ์ด์–ธํŠธ ์ •๋ณด์˜ Client ID
REACT_APP_GOOGLE_CLIENT_SECRET= ๊ตฌ๊ธ€ ํด๋ผ์ด์–ธํŠธ ์ •๋ณด์˜ Client SECRET

Server

## Server์˜ .env.example ํŒŒ์ผ๋ช…์„ .env๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์‚ฌ์šฉ
## .env ์•ˆ์— ๋“ค์–ด๊ฐˆ ๋‚ด์šฉ
DATABASE_HOST= db ํ˜ธ์ŠคํŠธ
DATABASE_USER= db ๊ณ„์ •
DATABASE_PORT= db ํฌํŠธ ๋ฒˆํ˜ธ
DATABASE_NAME= db ์ด๋ฆ„
DATABASE_PASSWORD= db ํŒจ์Šค์›Œ๋“œ

SERVER_PORT= ์„œ๋ฒ„ ํฌํŠธ ๋ฒˆํ˜ธ(ex: 4000)

ACCESS_SECRET= jwt access ์‹œํฌ๋ฆฟ ํ‚ค
REFRESH_SECRET= jwt refresh ์‹œํฌ๋ฆฟ ํ‚ค

GOOGLE_CLIENT_ID= ๊ตฌ๊ธ€ ํด๋ผ์ด์–ธํŠธ ์ •๋ณด์˜ Client ID
GOOGLE_CLIENT_SECRET= ๊ตฌ๊ธ€ ํด๋ผ์ด์–ธํŠธ ์ •๋ณด์˜ Client SECRET

KAKAO_CLIENT_ID= ์นด์นด์˜ค ํด๋ผ์ด์–ธํŠธ ์ •๋ณด์˜ Client ID
KAKAO_CLIENT_SECRET= ์นด์นด์˜ค ํด๋ผ์ด์–ธํŠธ ์ •๋ณด์˜ Client SECRET


MAIL_ID= ๋ณด๋‚ด๋Š” ๋ฉ”์ผ์˜ ์ฃผ์†Œ
MAIL_PASSWORD= ๋ณด๋‚ด๋Š” ๋ฉ”์ผ์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ

SERVER=http://localhost:4000
CLIENT=http://localhost:3000/login

๐Ÿ“Œ ์•ฑ ์‹คํ–‰

## Client์™€ Server ๊ฐ๊ฐ์˜ ํด๋”์—์„œ ์‹คํ–‰
$ npm run start

โœจย Feature

  • ํ™”์ƒ์œผ๋กœ ๊ฑฐ๋ฆฌ ๋˜๋Š” ์‹œ๊ฐ„์— ๊ด€๊ณ„์—†์ด ํŒ€์›๊ณผ ์˜๊ฒฌ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ณต์œ ํ•˜๋ฉฐ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • 4์ธ๊นŒ์ง€ ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ์ฑ„ํŒ…๋ฐฉ์—์„œ ์นœ๊ตฌ๋“ค๊ณผ ๊ฐ™์ด ์–ผ๊ตด์„ ๋ณด๋ฉฐ ๋Œ€ํ™”์™€ ์ฑ„ํŒ…์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • todo๋ชฉ๋ก์„ ํ• ์ผ, ์ง„ํ–‰์ค‘, ์™„๋ฃŒ 3๊ฐ€์ง€ ๋‹จ๊ณ„๋กœ ๊ตฌ๋ณ„ํ•˜์—ฌ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์นธ๋ฐ˜๋ณด๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์ผ์ฃผ์ผ ๊ฐ„์˜ ๊ณต๋ถ€์‹œ๊ฐ„์„ ๊ทธ๋ž˜ํ”„ํ™”ํ•˜์—ฌ ํ™•์ธํ•˜๊ณ  ์ผ์ฃผ์ผ๊ฐ„์˜ ์ด ๊ณต๋ถ€์‹œ๊ฐ„์„ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1. ์‚ฌ์šฉ ์Šคํƒ ๋ฐ ์Šคํƒ ์•„ํ‚คํ…์ณ

2. Wirframe

Landing Page
ํšŒ์› ๊ฐ€์ž…
๋กœ๊ทธ์ธ
๋‚ด ์ •๋ณด
ID ์ฐพ๊ธฐ
PWD ์ฐพ๊ธฐ
๊ณต๋ถ€๋ฐฉ ๋ชฉ๋ก
๊ณต๋ถ€๋ฐฉ ์ƒ์„ฑ
ํ™”์ƒ ์ฑ„ํŒ…
Study To-Do
๋‚˜์˜ ๊ณต๋ถ€
๊ด€๋ จ ๋ชจ๋‹ฌ

3. UI ๋””์ž์ธ

Landing Page
ํšŒ์› ๊ฐ€์ž…
๋กœ๊ทธ์ธ
๋‚ด ์ •๋ณด
ID ์ฐพ๊ธฐ
PWD ์ฐพ๊ธฐ
๊ณต๋ถ€๋ฐฉ ๋ชฉ๋ก
๊ณต๋ถ€๋ฐฉ ์ƒ์„ฑ
ํ™”์ƒ ์ฑ„ํŒ…
Study To-Do
๋‚˜์˜ ๊ณต๋ถ€
๊ด€๋ จ ๋ชจ๋‹ฌ

4. DB ์Šคํ‚ค๋งˆ

5. API ๋ฌธ์„œ

6. ์ฃผ์š” ๊ธฐ๋Šฅ๋ณ„ ์‹œ์—ฐ GIF

๋žœ๋”ฉ ๋ฐ ๋กœ๋”ฉ ํŽ˜์ด์ง€
ํšŒ์›๊ฐ€์ž…
๋กœ๊ทธ์ธ
๋งˆ์ดํŽ˜์ด์ง€
๋กœ๊ทธ์•„์›ƒ
์•„์ด๋””/ํŒจ์Šค์›Œ๋“œ ์ฐพ๊ธฐ
Todo ์นธ๋ฐ˜๋ณด๋“œ
๊ณต๋ถ€์‹œ๊ฐ„ ์ฐจํŠธ
๊ณต๋ถ€๋ฐฉ ๋ชฉ๋ก
๊ณต๋ถ€๋ฐฉ ์ƒ์„ฑ
๊ณต๋ถ€๋ฐฉ ์‚ฌ์šฉ

๐Ÿ”ฅ Refactoring

  • ์˜๋ฏธ์žˆ๋Š” ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ

๐Ÿ’ง Additional Details

  • ์นด์นด์˜ค ์†Œ์…œ ๋กœ๊ทธ์ธ ์ถ”๊ฐ€ํ•˜๊ธฐ
  • Typescript type ์žฌ์ž‘์„ฑํ•˜๊ธฐ
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋น„๋ฐ€๋ฒˆํ˜ธ ์•”ํ˜ธํ™”ํ•˜์—ฌ ์ €์žฅํ•˜๊ธฐ

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors