---
# System prepended metadata

title: 프로젝트 개요 및 구현사항

---

# 프로젝트 개요 및 구현사항

# 개요
- 램 가격을 크롤링 하여 내 디비에 저장
- 저장된 데이터를 도표로 그려 출력하는 웹사이트
- (옵션) 로그인 하고, 램가격이 해당가격 이하일때 알림메일보내기 구현

# 구현사항
## 백엔드
- 웹 크롤링 기술 사용
- nextJS를 이용한 백엔드 구축 => 익스프레스 하자!
- GraphQL을 이용하여 구현
    - 시간별, 일별, 월별로 데이터 보내는것 구현
    - 종류별로 구별(삼성 2666, 3200)

## 개발환경
- AWS 사용해보기
- travis ci
- 디비
    - PostgreDB -> 필요없음
    - MongoDB
- heroku
- HTTPS (Let's Encrypt - greenlock npm)

## 프론트엔드
- CRA TypeScript
- Ant Design
- 차트는 billboard.js
- 윅스 사용

2021/03/05
- ㅎㅇ
- 고려사항 -> 반응형 웹/앱?
- 핥짞
- 님 nextjs 쓰고싶은 이유가 뭔가요?
- ? 그냥요 라고 하면 칼빵맞나 최신트렌드잖아요
- ㅋㅋㅋㅋㅋ 사실 react에 시간 오지게 쏟을거같아서 nextjs한건데
- 보니까 리액트 디자인은 걱정안해도 되겠더라고요
- 그래서 사실상 백엔드의 왕좌 express로 바꿔도 될까싶은
- 뭐 결정은 님이하셔도 괜찮은데 사실 이게 뭘 엄청나게 만들겟다! 가 아니라 다른걸 여러가지 경험해보면서 하고싶다 라는게 제 견해다보니까 그런의견이 잇엇습니다 쓰던거만 쓰면 거기에 사람이 갇히자나염 
- 아 익스프레스 써봤습니까
- 아뇨 님이 많이써보셧잖아요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ(전 파이썬전문)
- 아직 두번밖에 못써봣는데다가 추가하고싶은 기술이 아직많아서
- 개발은 95프로 제가합니다
- 그럼 익스프레스 해도 무방합니다.
- 사실 넥스트 느낌이 프론트 하던놈들이 백엔드 잘모르니까 도전! 하는 정신으로 하는 느낌이라
- 에디터로치면 nano = nextjs, vim = express, 나머지하나 = django
- 오늘 디자인 짜고 보여줄게요
- (ㅎㅎ) 증거인멸 (sudo rm -rf *) /야!! ㅎㅎ 맞장가!!!!!!맞짱뜨실분,,,,,신세계 브금 들으셧나;
- 맛나게 드세요

- 작성되나요?
- ㅎㅇ 이거왜이렇게생김
- ㅎㅇ 오른쪽에 MD보임?
- 개신기하네요 오
- 바로 반영되네 신기하다굳이 ,,,,?
- 이쁜거보소
- 이거 클론하자는 미친조도 있었다
- 자 토론을 해봅시다
- nextJS가 뭐죠?
- express 같은건데 server side rednering 하고 react에 특화된 백엔드 프레임워크입니다
- ㅇ ㅏ일종의 백엔드인데 react랑 비슷햇어요 제느낌에
- 찾아보겠습니다.
- 이건 제 핑계일수도잇는데 크롤링을한다면 자바스크립트가 특화되잇을지 의문이네요 뭐잇긴하던데 그러니까요 그래서 그 큰 틀을 잡고서 저희 프로젝트랑 프레임워크가 뭐가 잘특화되잇고 맞는지 고민해봐야할것같아요 아 무조건이죠 핥짞
- ? 핥지마
- 일단 프론트는 닥치고 리액트입니다
- 특화되있지는 않을텐데 지원은 할거에요
- 일단 고민해봐야될게 님 백엔드랑 제 백엔드가 다르잖아요
- 아니다 뭘고민해봐야되지 근데 저 피아노칠라그랫는데 납치당햇네요ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
- 치러가세요 훑쩍
- 나 궁금한게 이거 램 하나만 한다고하면 페이지 하나만 넣을거에요? 굳이 여러페이지를 넣을 필요가 있을까요 navbar 같은건가요? 그런느낌이긴하죠
- 혹시 그냥 뭐 하나 부탁드려도 될까요 만약 한다고하면 그냥 그 레이아웃 같은거 일단 그려주실수잇나요 제가 생각한거랑 님이 생각한거랑 다를수도잇어서 원하심녀 저도 그려다 올려드릴게여 아마 10분이면그릴듯 그거 좋은생각이네요 ㅎㅎ
- 어짜피 이거 한번 와이어프레임 그려야되서
- 서로 갤탭써서 그려오면될듯
- 자 일단 백엔드를 말이죠. 전 뭘해도 상관없거든요 장고를하든 플라스크를하든
- 근데 자바스크립트기반 백엔드를 한다면 제가 엄청 가르쳐드릴수 있습니다.
- 일단 요즘 백엔드 추세가 Node.js > Python > Ruby 입니다
- 페이지는 하나인데 탭이 있는식으로 할거에요
- 램 용량선택, 주기선택(하루단위, 주단위, 월단위 등)
- 일단은 그렇긴한데 저는 한다면 next를 써보고싶긴하거든요 지금이게 가장유행이기도하고해서, 흠 그럼 넥스트 함써볼까요. 근데 이거 함 검색해봐야겠음 정확히 뭐가 좋은지
- 알겟습니다 그리고 Node js 쓴다고하면 express 쓰는거죠? 그럼 후보군으로 1. next js 2. express 3. flask 이렇게 가시죠, 장고는여 장고는 페이지 여러개있을떄 유리한거라 의미없어여 플라스크가 좋습니다 가벼운 웹은 그렇습니다. 님 Graph QL 해본적있나요 없어요 ㅎㅎ 사실 저도 해본적 없습니다.
- 들박충 좋죠 디비는 뭐 다뤄봤어요
- 개념은 아세요 아니요 전혀모르는데 이거 해본적도없어서  네 근데 막상하면 저도 들이박고 해서 상관은 없어요 저 맨날 들박충이라 디비 마리아요
- Koa가 있긴하거든요? 근데 병신이에요. 그래서 익스프레스입니다
- 한줄씩 대화하기하죠
- ㅋㅋㅋㅋㅋㅋㅋ 마리아요 마리아 
- NoSQL 안써봣어요?
- 네 쓰려고했는데 그게 그뭐지 join 하는게 어렵더라고요?
- 네 어렵긴한데 NoSQL에서 Join쓰면 병신이에요
- 그 저희가 사용햇던 어플리케이션이 join 하면서 해당 데이터를 찾는경우가 많아서 안써봣습니다 결국
- 이번기회에 써보실래요? 저도 한번써봄
- 근데 만약에 하루단위, 주단위, 월단위, 등 선택해서 가져올때 어떻게가져와요? noSQL 쓰면?
- 날짜에 index 속성걸고 순차적으로 가져옵니다
- 아 그런식이구나 그럼일단 몽고쓰시죠? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 안해봣는데 어떤느낌인진 알아여 JSON 같이 받더만
- ㅋㅋㅋㅋㅋㅋㅋㅋ
- 흠 
- 그 머지 travis는 뭐에요?아니근데 왜 여기서대화하는거임그 travis는 뭔지만 아렬주고가여
- 어짜피 나중에 지우면됨 카톡으로하실? 젠킨스아심?ㄴㄴ
- 저도 안써봤는데 push pull 자동으로해주는 툴이에요
- 엥 굳이 github 안쓰고 이거 써야할 메리트가 잇을가여
- 아 이게 깃이랑 연동임 만약에 우리 깃 레퍼지토리가 push받으면 서버에서 알아서 pull받게하는거임
- 아핳ㅎㅎㅎㅎ 그럼상관없네 님 branch 따는법 알죠 카톡 ㄱㄱ