Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/in-jun/github-profile-comments

Github profile Comment service
https://github.com/in-jun/github-profile-comments

comments comments-system git github githubprofile githubprojects githubreadme markdown markdown-language profile-readme readme-profile svg-images

Last synced: about 1 month ago
JSON representation

Github profile Comment service

Awesome Lists containing this project

README

        

# πŸ’¬ GitHub Profile Comments

[![Go Report Card](https://goreportcard.com/badge/github.com/in-jun/github-profile-comments)](https://goreportcard.com/report/github.com/in-jun/github-profile-comments)

> 🌟 GitHub ν”„λ‘œν•„μ— λŒ“κΈ€ κΈ°λŠ₯을 μΆ”κ°€ν•˜λŠ” ν˜μ‹ μ μΈ 도ꡬ

---

## πŸ“‹ λͺ©μ°¨

- [μ†Œκ°œ](#-μ†Œκ°œ)
- [κΈ°λŠ₯](#-κΈ°λŠ₯)
- [μ‹œμž‘ν•˜κΈ°](#-μ‹œμž‘ν•˜κΈ°)
- [ν…Œλ§ˆ](#-ν…Œλ§ˆ)
- [기술 μŠ€νƒ](#-기술-μŠ€νƒ)
- [μ•„ν‚€ν…μ²˜](#-μ•„ν‚€ν…μ²˜)

---

## πŸ“– μ†Œκ°œ

GitHub Profile CommentsλŠ” GitHub ν”„λ‘œν•„μ— 동적인 μ†Œν†΅ κΈ°λŠ₯을 μΆ”κ°€ν•˜λŠ” λ„κ΅¬μž…λ‹ˆλ‹€.

### μž‘λ™ 방식

```mermaid
sequenceDiagram
participant User as μ‚¬μš©μž
participant GitHub as GitHub OAuth
participant Service as λŒ“κΈ€ μ„œλΉ„μŠ€
participant DB as λ°μ΄ν„°λ² μ΄μŠ€

User->>GitHub: OAuth 둜그인
GitHub->>Service: μ‚¬μš©μž 정보
Service->>DB: μ‚¬μš©μž μ €μž₯
Service->>User: 둜그인 성곡
User->>Service: λŒ“κΈ€ μž‘μ„±
Service->>DB: λŒ“κΈ€ μ €μž₯
```

## ✨ κΈ°λŠ₯

### 핡심 κΈ°λŠ₯

- πŸ’¬ μ‹€μ‹œκ°„ λŒ“κΈ€
- πŸ‘ μ’‹μ•„μš”/μ‹«μ–΄μš”
- 🎨 μ»€μŠ€ν…€ ν…Œλ§ˆ
- πŸ”’ GitHub OAuth 인증

### μ‚¬μš©μž κΈ°λŠ₯

| κΈ°λŠ₯ | μ„€λͺ… | κΆŒν•œ |
| --------- | -------------------- | ----------- |
| λŒ“κΈ€ μž‘μ„± | ν”„λ‘œν•„μ— λŒ“κΈ€ 남기기 | 둜그인 ν•„μš” |
| μ’‹μ•„μš” | λŒ“κΈ€μ— μ’‹μ•„μš” ν‘œμ‹œ | 둜그인 ν•„μš” |

## πŸš€ μ‹œμž‘ν•˜κΈ°

### 1. νšŒμ›κ°€μž…

```bash
# 1. 인증 νŽ˜μ΄μ§€ λ°©λ¬Έ
https://comment.injunweb.com/api/auth/login

# 2. GitHub OAuth 둜그인 진행

# 3. 성곡 응닡 확인
{"github_id":123456789,"message":"Logged in successfully"}
```

### 2. ν”„λ‘œν•„ μ„€μ •

```markdown
# README.md에 μΆ”κ°€

[![Comments](https://comment.injunweb.com/api/user/{κΉƒν—ˆλΈŒμ•„μ΄λ””}/svg?theme={ν…Œλ§ˆ})](https://comment.injunweb.com/{κΉƒν—ˆλΈŒμ•„μ΄λ””})
```

### μ„€μΉ˜ 확인

- ν”„λ‘œν•„ νŽ˜μ΄μ§€ μƒˆλ‘œκ³ μΉ¨
- λŒ“κΈ€ μœ„μ ― ν‘œμ‹œ 확인
- ν…Œλ§ˆ 적용 확인

## 🎨 ν…Œλ§ˆ

### μ‚¬μš© κ°€λŠ₯ν•œ ν…Œλ§ˆ

| ν…Œλ§ˆ | μ„€λͺ… | μ˜ˆμ‹œ |
| ----------- | ----------- | --------------------------------------------------------------------------------------------------------------------- |
| black | 닀크 λͺ¨λ“œ | [![Example](https://comment.injunweb.com/api/user/in-jun/svg?theme=black)](https://comment.injunweb.com/in-jun) |
| white | 라이트 λͺ¨λ“œ | [![Example](https://comment.injunweb.com/api/user/in-jun/svg?theme=white)](https://comment.injunweb.com/in-jun) |
| transparent | 투λͺ… λ°°κ²½ | [![Example](https://comment.injunweb.com/api/user/in-jun/svg?theme=transparent)](https://comment.injunweb.com/in-jun) |

## πŸ› οΈ 기술 μŠ€νƒ

### ν”„λ‘ νŠΈμ—”λ“œ

```yaml
UI:
- HTML5
- CSS3
- JavaScript (ES6+)

κΈ°λŠ₯:
- λ°˜μ‘ν˜• λ””μžμΈ
- SVG λ Œλ”λ§
```

### λ°±μ—”λ“œ

```yaml
μ„œλ²„:
- Go
- Gin Framework
- GORM ORM

λ°μ΄ν„°λ² μ΄μŠ€:
- MySQL

인증:
- GitHub OAuth
- JWT
```

### 배포

```yaml
인프라:
- Docker
- injunweb (https://injunweb.com)
```

## πŸ“ μ•„ν‚€ν…μ²˜

### λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰

```mermaid
erDiagram
GITHUBUSER {
uint ID PK
float64 GitHubID
string GitHubLogin
}
COMMENT {
uint ID PK
uint ReceiverID FK
uint AuthorID FK
string Content
bool IsOwnerLiked
}
LIKED {
uint ID PK
uint CommentID FK
uint UserID FK
}
DISLIKED {
uint ID PK
uint CommentID FK
uint UserID FK
}
GITHUBUSER ||--o{ COMMENT : "writes/receives"
GITHUBUSER ||--o{ LIKED : "likes"
GITHUBUSER ||--o{ DISLIKED : "dislikes"
COMMENT ||--o{ LIKED : "has"
COMMENT ||--o{ DISLIKED : "has"
```

---

**[맨 μœ„λ‘œ μ˜¬λΌκ°€κΈ°](#-github-profile-comments)**

Made with ❀️ by [in-jun](https://github.com/in-jun)