Jungmin Park

Modified README.md

Showing 1 changed file with 95 additions and 11 deletions
## 2021 - 2학기 오픈소스SW개발 프로젝트
# 2021 - 2학기 오픈소스SW개발 프로젝트
#### 지자체별 행사 / 축제 정보 및 날씨 제공 서비스
## 지자체별 행사 / 축제 정보 및 날씨 제공 서비스
---
***
---
* 지자체에서 개최하는 행사 정보와 날씨 데이터를 조합하고, 사용자에게 친숙한 인터페이스를 활용하여 지역/행사별로 날씨 정보를 한눈에 볼 수 있는 서비스를 제공한다.
1. Service 1 - web
Built With
- Frontend
* [Svelte](https://svelte.dev/)
- Backend & DB
* [Node.js](https://nodejs.org/ko/download/)
* [MongoDB](https://www.mongodb.com/)
## Getting Started
### Prerequisites 사전 설치 파일
1. Docker를 사용하는 경우 (**권장**)
* [도커 공식 홈페이지](https://www.docker.com/)에 접속하여 docker 및 docker-compose 설치
1. Docker를 사용하지 않는 경우
* [Node.js 공식 홈페이지](https://nodejs.org/ko/download/)에 접속하여 Node.js 설치
* [MongoDB 공식 홈페이지](https://www.mongodb.com/)에 접속하여 MongoDB 설치
* [Mongoexport 사용을 위한 tool](https://www.mongodb.com/try/download/database-tools?tck=docs_databasetools)에 접속하여 mongoexport 추가 가능 설치
* `Program files/mongodb/bin` 경로 안에 설치된 파일들 추가하여 확장 기능을 위한 설치 완료
### Installation 설치
* Windows의 경우 설치하고자 하는 폴더에 들어가서 우클릭한 후 `git bash` 를 클릭하여 터미널 창을 연다.
* MacOs의 경우 터미널창을 연 후 Command Line Interface를 통하여 설치하고자 하는 폴더로 이동한다
* `git clone` 명령으로 프로젝트 폴더 clone
```
git clone http://khuhub.khu.ac.kr/2018102190/TFT.git
```
* `npm install` 명령으로 npm 패키지 설치
```
npm install
```
## 프로젝트 구조
1. Service 1 - Web
1. Frontend
1. Svelte를 사용하여 관광지 정보 / 날씨 정보를 한눈에 볼 수 있게 알려주는 유저 인터페이스로 사용
1. [카카오 지도 API](https://apis.map.kakao.com/)를 호출하여 지도 위에 핀 및 마커 설정
1. Backend Server
1. MongoDB Atlas와 서버를 연동하여 Database와 Node.js 연결
1. DB에서 json 형태의 데이터를 불러 온 후 Frontend에서 유저에 의한 요청 발생 시 Frontend로 전송
1. Frontend
1. Svelte를 사용하여 관광지 정보 / 날씨 정보를 알려주는 유저 인터페이스로 사용
1. Service 2 - DB
1. API로부터 받아온 정보를 관리하고 MongoDB Atlas를 활용하여 Server에 제공
1. Service 3 - API Handler
1. [관광공사 API](https://api.visitkorea.or.kr/main.do)를 호출하여 Database에 Write함
1. [카카오 지도 API](https://apis.map.kakao.com/)를 호출하여 지도 위에 핀 및 마커 설정
1. [기상청 API](https://data.kma.go.kr/api/selectApiList.do?pgmNo=42)를 호출하여 날씨 및 기상 관련 정보 가져옴
## Usage 사용법
빌드 설치 설정 예시 / 방법
1. Docker에서 사용하는 경우
1. Docker-compose를 이용하여
1. 직접 소스코드를 수정하는 경우
## Roadmap
* 무슨 기능들 구현했는지 시간에 따라
- [v] 처음 구현한 기능
- [v] 그다음 구현한 기능
- [v] 세번째 구현한 기능
- [ ] 네번째 구현한 기능
- [ ] 다섯번째 구현한 기능
- [ ] 세부기능1
- [ ] 세부기능2
## Contribution
프로젝트에 대한 어떠한 참여나 추가 개발도 **환영합니다**.
만약 프로젝트 발전을 위한 더 좋은 방법이 있으시다면 저희의 repo를 fork하신 후 pull request를 부탁드립니다.
1. 프로젝트 fork 해오기 (` git clone http://khuhub.khu.ac.kr/2018102190/TFT.git `)
2. 새로운 기능을 위한 branch 생성 (` git checkout -b feature/newFeature `)
3. 바뀐 파일들 commit하기 (` git commit -m 'Add some newFeature' ` )
4. Fork된 Branch에 바뀐 파일들 push하기 (` git push origin feature/newFeature `)
5. Pull Request 보내기
## License
## Contact
2018102198 서준혁 junhyuk0801@khu.ac.kr
2018102194 배형석 qogudtjr7@khu.ac.kr
2018102190 박정민 jungmin59@khu.ac.kr
프로젝트 주소 : [http://khuhub.khu.ac.kr/2018102190/TFT.git](http://khuhub.khu.ac.kr/2018102190/TFT.git)
......