Showing
1 changed file
with
81 additions
and
30 deletions
| 1 | -# 2021 - 2학기 오픈소스SW개발 프로젝트 | 1 | +# **지자체별 행사 / 축제 정보 및 날씨 제공 서비스** |
| 2 | 2 | ||
| 3 | -## 지자체별 행사 / 축제 정보 및 날씨 제공 서비스 | 3 | +이미지 통으로 올리고 링크걸어서 이미지 표시해주기 |
| 4 | 4 | ||
| 5 | -* 지자체에서 개최하는 행사 정보와 날씨 데이터를 조합하고, 사용자에게 친숙한 인터페이스를 활용하여 지역/행사별로 날씨 정보를 한눈에 볼 수 있는 서비스를 제공한다. | 5 | +## 순서 |
| 6 | +* About the Project | ||
| 7 | +* Getting Started | ||
| 8 | + * Prerequisites | ||
| 9 | + * Installation | ||
| 10 | +* 프로젝트 구조 / 동작 방식 | ||
| 11 | +* Usage | ||
| 12 | +* Roadmap | ||
| 13 | +* Contribution | ||
| 14 | +* License | ||
| 15 | +* Contact | ||
| 6 | 16 | ||
| 7 | -Built With | 17 | +--- |
| 18 | +*** | ||
| 19 | +--- | ||
| 8 | 20 | ||
| 9 | -- Frontend | 21 | + |
| 10 | - * [Svelte](https://svelte.dev/) | 22 | +## **About the Project** |
| 11 | -- Backend & DB | 23 | + |
| 24 | +기존에 축제나 행사를 검색하기 위해서는 행사가 언제 어디서 열리는지 파악하고, 그 날짜에 맞춰서 날씨를 또 검색해 보아야 하는 번거로움이 있었다. 이러한 일련의 번거로운 과정들을 한 데 묶어 몇 번의 클릭으로 사용자가 원하는 행사 및 축제 정보를 디스플레이 함으로써 사용자의 편의 증대라는 효과를 가져올 수 있을 것으로 예상된다. | ||
| 25 | + | ||
| 26 | +본 서비스는 지자체에서 개최하는 행사 정보와 날씨 데이터를 API를 통하여 받아온 후 그를 조합하여 사용자에게 친숙한 인터페이스(svelte 활용)를 통해 지역 / 행사별로 날씨 정보를 한눈에 볼 수 있는 서비스를 제공한다. | ||
| 27 | + | ||
| 28 | +Built With | ||
| 29 | +- WEB | ||
| 12 | * [Node.js](https://nodejs.org/ko/download/) | 30 | * [Node.js](https://nodejs.org/ko/download/) |
| 31 | + * [Svelte](https://svelte.dev/) | ||
| 32 | + * [Express](https://expressjs.com/ko/) | ||
| 33 | +- Database | ||
| 13 | * [MongoDB](https://www.mongodb.com/) | 34 | * [MongoDB](https://www.mongodb.com/) |
| 35 | +- API Handler | ||
| 36 | + * [MongoDB](https://www.mongodb.com/) | ||
| 37 | + * [Node.js](https://nodejs.org/ko/download/) | ||
| 38 | + * [RequestJs](https://www.npmjs.com/package/request) | ||
| 14 | 39 | ||
| 15 | -## Getting Started | 40 | +## **Getting Started** |
| 16 | 41 | ||
| 17 | -### Prerequisites 사전 설치 파일 | 42 | +### **Prerequisites** |
| 18 | 43 | ||
| 19 | 1. Docker를 사용하는 경우 (**권장**) | 44 | 1. Docker를 사용하는 경우 (**권장**) |
| 20 | * [도커 공식 홈페이지](https://www.docker.com/)에 접속하여 docker 및 docker-compose 설치 | 45 | * [도커 공식 홈페이지](https://www.docker.com/)에 접속하여 docker 및 docker-compose 설치 |
| 46 | + | ||
| 21 | 1. Docker를 사용하지 않는 경우 | 47 | 1. Docker를 사용하지 않는 경우 |
| 22 | * [Node.js 공식 홈페이지](https://nodejs.org/ko/download/)에 접속하여 Node.js 설치 | 48 | * [Node.js 공식 홈페이지](https://nodejs.org/ko/download/)에 접속하여 Node.js 설치 |
| 23 | * [MongoDB 공식 홈페이지](https://www.mongodb.com/)에 접속하여 MongoDB 설치 | 49 | * [MongoDB 공식 홈페이지](https://www.mongodb.com/)에 접속하여 MongoDB 설치 |
| 24 | - * [Mongoexport 사용을 위한 tool](https://www.mongodb.com/try/download/database-tools?tck=docs_databasetools)에 접속하여 mongoexport 추가 가능 설치 | 50 | + * [Mongoexport 사용을 위한 tool](https://www.mongodb.com/try/download/database-tools?tck=docs_databasetools)에 접속하여 mongoexport 추가 기능 설치 |
| 25 | * `Program files/mongodb/bin` 경로 안에 설치된 파일들 추가하여 확장 기능을 위한 설치 완료 | 51 | * `Program files/mongodb/bin` 경로 안에 설치된 파일들 추가하여 확장 기능을 위한 설치 완료 |
| 26 | 52 | ||
| 53 | +### **Installation** | ||
| 27 | 54 | ||
| 28 | -### Installation 설치 | 55 | +* Free API Key를 [기상청 API](https://data.kma.go.kr/api/selectApiList.do?pgmNo=42), [관광공사 API](https://api.visitkorea.or.kr/main.do), [카카오 지도 API](https://apis.map.kakao.com/) 공식 사이트에서 받아온다 |
| 29 | 56 | ||
| 30 | -* Windows의 경우 설치하고자 하는 폴더에 들어가서 우클릭한 후 `git bash` 를 클릭하여 터미널 창을 연다. | 57 | +* Windows의 경우 설치하고자 하는 폴더에 들어가서 우클릭한 후 `git bash` 를 클릭하여 터미널 창을 연다 |
| 31 | 58 | ||
| 32 | * MacOs의 경우 터미널창을 연 후 Command Line Interface를 통하여 설치하고자 하는 폴더로 이동한다 | 59 | * MacOs의 경우 터미널창을 연 후 Command Line Interface를 통하여 설치하고자 하는 폴더로 이동한다 |
| 33 | 60 | ||
| ... | @@ -36,13 +63,14 @@ Built With | ... | @@ -36,13 +63,14 @@ Built With |
| 36 | git clone http://khuhub.khu.ac.kr/2018102190/TFT.git | 63 | git clone http://khuhub.khu.ac.kr/2018102190/TFT.git |
| 37 | ``` | 64 | ``` |
| 38 | 65 | ||
| 39 | -* `npm install` 명령으로 npm 패키지 설치 | 66 | +* 폴더를 연 후 `npm install` 명령으로 npm 패키지 설치 |
| 40 | ``` | 67 | ``` |
| 41 | npm install | 68 | npm install |
| 42 | ``` | 69 | ``` |
| 43 | 70 | ||
| 71 | +* apiHandler 부분의 server.js 파일에 발급받은 API를 입력해서 사용을 위한 준비를 완료한다 | ||
| 44 | 72 | ||
| 45 | -## 프로젝트 구조 | 73 | +## **프로젝트 구조 / 동작 방식** |
| 46 | 74 | ||
| 47 | 1. Service 1 - Web | 75 | 1. Service 1 - Web |
| 48 | 1. Frontend | 76 | 1. Frontend |
| ... | @@ -57,45 +85,68 @@ Built With | ... | @@ -57,45 +85,68 @@ Built With |
| 57 | 1. [관광공사 API](https://api.visitkorea.or.kr/main.do)를 호출하여 Database에 Write함 | 85 | 1. [관광공사 API](https://api.visitkorea.or.kr/main.do)를 호출하여 Database에 Write함 |
| 58 | 1. [기상청 API](https://data.kma.go.kr/api/selectApiList.do?pgmNo=42)를 호출하여 날씨 및 기상 관련 정보 가져옴 | 86 | 1. [기상청 API](https://data.kma.go.kr/api/selectApiList.do?pgmNo=42)를 호출하여 날씨 및 기상 관련 정보 가져옴 |
| 59 | 87 | ||
| 60 | -## Usage 사용법 | 88 | +## **Usage** |
| 89 | + | ||
| 90 | ++ 사진, 실제 구동 예시, 구동 방법 등 설명 필요 | ||
| 61 | 91 | ||
| 62 | 빌드 설치 설정 예시 / 방법 | 92 | 빌드 설치 설정 예시 / 방법 |
| 63 | 93 | ||
| 64 | 1. Docker에서 사용하는 경우 | 94 | 1. Docker에서 사용하는 경우 |
| 65 | - 1. Docker-compose를 이용하여 | 95 | + Linux Command Line Interface를 이용하여 설치 필요 |
| 66 | -1. 직접 소스코드를 수정하는 경우 | ||
| 67 | 96 | ||
| 97 | + docker 설치 필요하고, docker에서 mongodb를 띄워주야 하고, | ||
| 68 | 98 | ||
| 69 | -## Roadmap | 99 | +1. Docker에서 사용하지 않는 경우 |
| 100 | + 1. | ||
| 70 | 101 | ||
| 71 | -* 무슨 기능들 구현했는지 시간에 따라 | 102 | +## **Roadmap** |
| 72 | 103 | ||
| 104 | +- [v] Express 활용 서버 기본 베이스 구축 및 Dockerfile, README first commit 진행 | ||
| 105 | +- [v] Frontend 개발을 위한 template와 ApiHandler 개발을 위한 template 추가 | ||
| 106 | +- [v] 관광공사 API를 활용하여 DB에 축제 정보 저장하는 기능 추가 | ||
| 107 | +- [v] ApiHandler에서 원하지 않는 정보 걸러내는 기능 추가 | ||
| 108 | +- [v] 서버 개설 시 DB와 server connect하는 기능 추가 | ||
| 109 | +- [v] 기상청 API를 활용하여 DB에 기상 정보 저장하는 기능 추가 | ||
| 110 | +- [v] 카카오 지도 API를 활용하여 svelte와 연동, 인터페이스 구축 | ||
| 111 | +- [v] MongoDB Atlas에서 JSON 형식으로 정보 받아오는 기능 추가 | ||
| 112 | +- [v] Express와 svelte 연동 | ||
| 113 | +- [v] Frontend에 도, 시, 군, 구 등 구획 설정 및 축제 선택 기능 추가 | ||
| 114 | +- [v] 로고 제작 및 이미지 추가 | ||
| 115 | +- [v] Frontend와 Backend Merge 실행 | ||
| 116 | +- [v] ApiHandler 간소화 (불필요한 파일 제거) | ||
| 117 | +- [v] ApiHandler와 server.js merge 실행 | ||
| 118 | +- [v] 실행 예시 이미지 업로드 | ||
| 73 | 119 | ||
| 74 | -- [v] 처음 구현한 기능 | ||
| 75 | -- [v] 그다음 구현한 기능 | ||
| 76 | -- [v] 세번째 구현한 기능 | ||
| 77 | -- [ ] 네번째 구현한 기능 | ||
| 78 | -- [ ] 다섯번째 구현한 기능 | ||
| 79 | - - [ ] 세부기능1 | ||
| 80 | - - [ ] 세부기능2 | ||
| 81 | 120 | ||
| 82 | -## Contribution | 121 | +## **Contribution** |
| 83 | 122 | ||
| 84 | 프로젝트에 대한 어떠한 참여나 추가 개발도 **환영합니다**. | 123 | 프로젝트에 대한 어떠한 참여나 추가 개발도 **환영합니다**. |
| 85 | 124 | ||
| 86 | -만약 프로젝트 발전을 위한 더 좋은 방법이 있으시다면 저희의 repo를 fork하신 후 pull request를 부탁드립니다. | 125 | +만약 프로젝트 발전을 위한 더 좋은 방법이 있으시다면 저희의 프로젝트를 fork하신 후 pull request를 부탁드립니다. |
| 87 | 126 | ||
| 88 | 1. 프로젝트 fork 해오기 (` git clone http://khuhub.khu.ac.kr/2018102190/TFT.git `) | 127 | 1. 프로젝트 fork 해오기 (` git clone http://khuhub.khu.ac.kr/2018102190/TFT.git `) |
| 128 | + | ||
| 89 | 2. 새로운 기능을 위한 branch 생성 (` git checkout -b feature/newFeature `) | 129 | 2. 새로운 기능을 위한 branch 생성 (` git checkout -b feature/newFeature `) |
| 130 | + | ||
| 90 | 3. 바뀐 파일들 commit하기 (` git commit -m 'Add some newFeature' ` ) | 131 | 3. 바뀐 파일들 commit하기 (` git commit -m 'Add some newFeature' ` ) |
| 132 | + | ||
| 91 | 4. Fork된 Branch에 바뀐 파일들 push하기 (` git push origin feature/newFeature `) | 133 | 4. Fork된 Branch에 바뀐 파일들 push하기 (` git push origin feature/newFeature `) |
| 134 | + | ||
| 92 | 5. Pull Request 보내기 | 135 | 5. Pull Request 보내기 |
| 93 | 136 | ||
| 94 | -## License | 137 | +## **License** |
| 138 | + | ||
| 139 | +* [Node.js License Page](https://raw.githubusercontent.com/nodejs/node/master/LICENSE) | ||
| 140 | + | ||
| 141 | +* [svelte License Page](https://github.com/sveltejs/svelte/blob/master/LICENSE.md) | ||
| 142 | + | ||
| 143 | +* [request js License Page](https://github.com/request/request/blob/master/LICENSE) | ||
| 95 | 144 | ||
| 145 | +* [express js License Page](https://github.com/expressjs/express/blob/master/LICENSE) | ||
| 96 | 146 | ||
| 147 | +* [MongoDB License Page](https://www.mongodb.com/community/licensing) | ||
| 97 | 148 | ||
| 98 | -## Contact | 149 | +## **Contact** |
| 99 | 150 | ||
| 100 | 2018102198 서준혁 junhyuk0801@khu.ac.kr | 151 | 2018102198 서준혁 junhyuk0801@khu.ac.kr |
| 101 | 152 | ... | ... |
-
Please register or login to post a comment