SOPT 29th APPJAM - TEAM FILL-IN ✨ 2022.01.02 ~
권세훈 | 한수아 | 서호영 |
---|---|---|
func | detail | developer | done |
---|---|---|---|
Auth | 구글, 애플 소셜 로그인 | 세훈 | ✅ |
구글, 애플 소셜 회원가입 | 세훈 | ✅ | |
refresh token을 이용한 토큰 재발급 | 세훈 | ✅ | |
User | 내 정보 조회 | 세훈 | ✅ |
회원 탈퇴 | 세훈 | ✅ | |
Studio | 전체 스튜디오 조회하기 | 수아 | ✅ |
스튜디오 검색하기 | 수아 | ✅ | |
특정 스튜디오 상세 정보 조회하기 | 수아 | ✅ | |
Photo | 전체 사진 조회하기 | 세훈 | ✅ |
최신순 사진 조회하기 | 세훈 | ✅ | |
본인이 게시한 전체 사진 조회하기 | 호영 | ✅ | |
특정 사진 상세 정보 조회하기 | 호영 | ✅ | |
필름별 사진 조회하기 | 호영 | ✅ | |
필름 종류별 사진 조회하기 | 호영 | ✅ | |
스튜디오별 사진 조회하기 | 수아 | ✅ | |
특정 유저별 게시된 사진 조회하기 | 수아 | ✅ | |
사진 업로드하기 | 호영 | ✅ | |
Film | 종류별 필름 조회 | 호영 | ✅ |
Curation | 특정 큐레이션 사진 조회 | 수아 | ✅ |
Like | 좋아요 추가/삭제 | 수아 | ✅ |
📦 FILL-IN Directory Tree
FILL-IN
├── README.md
├── firebase.json
└── functions
├── api
│ ├── auth
│ │ ├── authPOST.js
│ │ ├── authTokenGET.js
│ │ └── index.js
│ ├── curation
│ │ ├── curationGET.js
│ │ ├── curationOneGET.js
│ │ └── index.js
│ ├── film
│ │ ├── filmStyleGET.js
│ │ └── index.js
│ ├── index.js
│ ├── like
│ │ ├── index.js
│ │ └── likePOST.js
│ ├── photo
│ │ ├── index.js
│ │ ├── photoAllGET.js
│ │ ├── photoFilmGET.js
│ │ ├── photoGET.js
│ │ ├── photoLatestGET.js
│ │ ├── photoMyGET.js
│ │ ├── photoPOST.js
│ │ ├── photoStudioGET.js
│ │ ├── photoStyleGET.js
│ │ └── photoUserGET.js
│ ├── photopaging
│ │ ├── index.js
│ │ ├── photoAllGET.js
│ │ ├── photoFilmGET.js
│ │ ├── photoStudioGET.js
│ │ ├── photoStyleGET.js
│ │ └── photoUserGET.js
│ ├── studio
│ │ ├── index.js
│ │ ├── studioNearbyGET.js
│ │ ├── studioOneGET.js
│ │ └── studioSearchGET.js
│ └── user
│ ├── index.js
│ ├── userDELETE.js
│ └── userGET.js
├── config
│ ├── dbConfig.js
│ └── firebaseClient.js
├── constants
│ ├── jwt.js
│ ├── nicknameSet.js
│ ├── responseMessage.js
│ ├── social.js
│ └── statusCode.js
├── db
│ ├── curation.js
│ ├── db.js
│ ├── film.js
│ ├── index.js
│ ├── like.js
│ ├── photo.js
│ ├── photopaging.js
│ ├── studio.js
│ └── user.js
├── index.js
├── lib
│ ├── convertSnakeToCamel.js
│ ├── jwt.js
│ ├── nicknameGenerator.js
│ ├── size.js
│ ├── social.js
│ └── util.js
├── middlewares
│ ├── auth.js
│ └── uploadImage.js
├── other
│ └── slack
│ ├── slack.js
│ └── slackAPI.js
├── package-lock.json
├── package.json
├── test
│ ├── curation
│ │ ├── curationGET.test.js
│ │ └── curationOneGET.test.js
│ ├── film
│ │ └── filmStyleGET.test.js
│ ├── like
│ │ └── likePOST.test.js
│ ├── photo
│ │ ├── photoAllGET.test.js
│ │ ├── photoFilmGET.test.js
│ │ ├── photoGET.test.js
│ │ ├── photoLatestGET.test.js
│ │ ├── photoStudioGET.test.js
│ │ ├── photoStyleGET.test.js
│ │ └── photoUserGET.test.js
│ ├── studio
│ │ ├── studioNearbyGET.test.js
│ │ ├── studioOneGET.test.js
│ │ └── studioSearchGET.test.js
│ └── user
│ └── userGET.test.js
└── ui-debug.log
{
"dependencies": {
"axios": "^0.24.0",
"busboy": "^0.3.1",
"cookie-parser": "^1.4.5",
"cors": "^2.8.5",
"cross-env": "^7.0.3",
"dayjs": "^1.10.7",
"dotenv": "^10.0.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-jest": "^25.7.0",
"express": "^4.17.1",
"firebase": "^9.5.0",
"firebase-admin": "^9.2.0",
"firebase-functions": "^3.11.0",
"helmet": "^4.6.0",
"hpp": "^0.2.3",
"jsonwebtoken": "^8.5.1",
"lodash": "^4.17.21",
"multer": "^1.4.3",
"path": "^0.12.7",
"pg": "^8.7.1",
"probe-image-size": "^7.2.2",
"supertest": "^6.2.2"
},
"devDependencies": {
"babel-eslint": "^10.1.0",
"eslint": "^7.6.0",
"eslint-config-google": "^0.14.0",
"firebase-functions-test": "^0.2.0",
"jest": "^25.1.0"
}
}