Skip to content

Commit 3b2b553

Browse files
authored
Create README.md
1 parent fb95389 commit 3b2b553

1 file changed

Lines changed: 109 additions & 0 deletions

File tree

README.md

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# GitHub Profile Card Generator API
2+
3+
This project provides a dynamic API for generating customized GitHub profile cards in **SVG** format.
4+
It fetches real GitHub user data using the GitHub API and renders it into a visually appealing card
5+
with animations, statistics, personal info, and fallback messaging for errors.
6+
7+
---
8+
9+
## ✨ Features
10+
11+
- Fetches **real-time GitHub profile data** (avatar, bio, stars, repositories, etc.)
12+
- Dynamic **SVG card rendering** with animation and styling
13+
- Automatic text wrapping for long descriptions
14+
- Multiple card layouts using parameters
15+
- Fallback SVG **error card** for invalid/missing data
16+
- Supports extended info such as:
17+
- Age
18+
- Study / Education
19+
- Religion
20+
- Job
21+
- Phone Number
22+
- Email
23+
- Hobby
24+
25+
---
26+
27+
## 📌 Available API Endpoints
28+
29+
### 1️⃣ /api/svg-card
30+
Generate SVG card containing GitHub + personal information.
31+
32+
**Example usage:**
33+
```
34+
/api/svg-card?name=octocat&age=18&study=IT&religion=None&job=Developer&number=08123&email=octo@gmail.com&hobby=Coding
35+
```
36+
37+
| Parameter | Required | Description |
38+
|----------|----------|-------------|
39+
| name || GitHub username (fetches avatar + stats) |
40+
| desc || Custom bio |
41+
| age, study, religion, job, number, email, hobby || Personal details |
42+
43+
---
44+
45+
## 🧠 How It Works
46+
47+
```mermaid
48+
flowchart TD
49+
A[Request Received] -->|Username Provided| B[Fetch GitHub Data]
50+
B --> C[Build SVG Template]
51+
C --> D[Render & Send SVG]
52+
A -->|Missing Data| E[Generate SVG Error Card]
53+
```
54+
55+
---
56+
57+
## 🛠️ Tech Stack
58+
59+
| Technology | Purpose |
60+
|-----------|---------|
61+
| **Node.js + Express** | API Server |
62+
| **Node-Fetch** | GitHub API data fetching |
63+
| **Custom SVG Renderer** | Dynamic card output |
64+
65+
---
66+
67+
## 🔐 Environment Variables
68+
69+
You can optionally use GitHub token to increase rate limits:
70+
71+
```
72+
GITHUB_TOKEN=your_personal_token_here
73+
```
74+
75+
---
76+
77+
## 🚀 Local Development
78+
79+
```bash
80+
npm install
81+
npm start
82+
```
83+
84+
Server will run at:
85+
86+
```
87+
http://localhost:3000
88+
```
89+
90+
---
91+
92+
## 📦 Folder Structure
93+
94+
```
95+
/api
96+
└─ github-card.js
97+
/utils
98+
├─ githubData.js
99+
├─ theSystem.js
100+
└─ allFunction.js
101+
```
102+
103+
---
104+
105+
## ❤️ Credits
106+
107+
Built by *LemonSync* — simple idea, powerful visualization.
108+
109+
Feel free to contribute improvements, additional card styles, and layout themes! 🚀

0 commit comments

Comments
 (0)