diff --git a/kakasoo/.gitkeep b/kakasoo/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/kakasoo/githubApiSdk.js b/kakasoo/githubApiSdk.js new file mode 100644 index 00000000000..adbf4931804 --- /dev/null +++ b/kakasoo/githubApiSdk.js @@ -0,0 +1,37 @@ +import axios from 'axios'; + +// GitHub API 기본 설정 +const GITHUB_API_BASE_URL = 'https://api.github.com'; +const TOKEN = 'YOUR_PERSONAL_ACCESS_TOKEN'; + +// axios 인스턴스 생성 +const api = axios.create({ + baseURL: GITHUB_API_BASE_URL, + headers: { + Authorization: `Bearer ${TOKEN}` + } +}); + +// 사용자 레포지토리 목록 가져오기 +async function getUserRepositories(username) { + try { + const response = await api.get(`/users/${username}/repos`); + return response.data; + } catch (error) { + console.error('Error fetching repositories:', error); + throw error; + } +} + +// 커밋 목록 가져오기 +async function getBranchCommits(username, repo, branch) { + try { + const response = await api.get(`/repos/${username}/${repo}/commits`, { + params: { sha: branch } + }); + return response.data; + } catch (error) { + console.error('Error fetching branch commits:', error); + throw error; + } +} \ No newline at end of file diff --git a/kakasoo/package.json b/kakasoo/package.json new file mode 100644 index 00000000000..6c14cd970e7 --- /dev/null +++ b/kakasoo/package.json @@ -0,0 +1,14 @@ +{ + "name": "github_connector", + "version": "1.0.0", + "description": "GitHub API SDK for fetching user repositories and branch commits", + "main": "githubApiSdk.js", + "dependencies": { + "axios": "^0.21.1" + }, + "scripts": { + "start": "node githubApiSdk.js" + }, + "author": "studio-pro", + "license": "MIT" +} \ No newline at end of file