API Wiki Docs Page
[TOC]
GitHub: SEMO
Simple & East Manual of API(이하, SEMO)는 신임 개발자 및 개발자를 꿈꾸는 사람들을 위한 API Wiki Docs Service입니다. 유용한 API Site 의 사용법 및 API Test Service를 제공하여 개발자들의 학업 효율 및 생산성 향상을 위한 서비스를 구현하였습니다. 또한, API Key를 저장, 관리 할 수 있는 서비스를 제공함으로써 API 접근성과 생산성을 향상시키고자 하였습니다.
-
front
폴더에서 npm 모듈을 install 합니다.$ npm install
-
backend
폴더에서 pip 모듈을 setup합니다.$ pip install -r requirements.txt
-
deploy DB로는
MySQL
을 활용했으나, test를 위한 DB로sqlite3
를 지원합니다. -
model 작업을 위한 migrate가 필요합니다.
backend
>manage.py
파일을 실행시킵니다.$ python manage.py migrate
-
backend
>db.json
파일을 load시킵니다.$ ./manage.py loaddata db.json
국내 공공데이터에서부터 해외 유명 사이트까지 다양한 주제의 API 사이트를 주요 기능 및 Category별로 정렬하여 보다 간편하게 API에 접근 할 수 있도록 합니다.
Detail Page에서는 해당 사이트에 대한 간략한 소개와 함께 주요 기능 및 데이터 형식, 비용 유무, 로그인 필요여부, Docs Link 등을 제공 함으로써 해당 사이트 방문 없이 사용에 필요한 기본적인 정보를 파악 할 수 있습니다.
또한, 회원가입 및 Key 발급 방법에 대한 소개를 통해 처음 이용하는 사이트에서 야기 될 수 있는 불편함을 줄이고자 하였으며, 이를 통해 해외 사이트에 대한 접근성 향상을 도모하였습니다.
개발 가이드에서는 해당 사이트에서 지원하는 언어 이외에도 각 언어별 사용 방법 을 제공합니다.
API Test Console은 별도의 코드 입력 없이 개발 가이드란에서 선택한 EndPoint가 필요로 하는 Parameters만 입력함으로써 간단하게 API 요청을 실행해 볼 수 있습니다. 이를 통해 내가 얻고자 하는 정보가 어떠한 유형으로 response 되는지 간단히 알 수 있습니다.
※ API Console Test를 통해 Movie Details에서 제공해주는 Schema의 목록
※ API Console Test를 통해 Movie Details에서 Response 받을 수 있는 데이터
SEMO의 사용자는 자신이 주로 사용하는 API 사이트를 직접 SEMO에 등록 할 수 있으며, 이를 통해 사용자에게는 더욱 많은 편의를 SEMO에는 더욱 많은 데이터를 쌓을 수 있게 합니다.
※ 관리자 페이지의 메인 화면, 각 항목별 주간 요청 갯수와 데이터를 확인 할 수 있다.
※ 사용자가 등록 혹은 수정 요청한 게시물을 관리 할 수 있다.
최근 조회 API 리스트를 모아 둠으로써, 기존에 사용하였던 API 사이트에 더욱 빠르게 접근 할 수 있다.
각 사이트별 API Key를 저장, 관리 할 수 있으며 만료일이 존재하는 경우 만료일도 함께 관리 할 수 있게 함으로써 Key 관리에 편의성을 더하였으며, Detail Page의 ApI Test Console에 별도의 Key 입력 없이 바로 테스트 해 볼 수 있도록 구현하였다.
- Django (2.2.4)
- Django REST Framework (3.10.2)
- yasg (1.17.0)
- python (3.6.8)
- MySql (8.0.18)
- django-rest-knox (4.1.0)
- Vuex (3.1.1)
- Vue.js (2.6.10)
- SCSS (sass-loder : 8.0.0, node-sass: 4.12.0)
- vue CLI (3.12.0)
- virtualenv (16.7.7)