Skip to content

Latest commit

ย 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ TalkGenius - AI Dating Assistant Keyboard App

Spring Boot React TypeScript OpenAI License

ไธ€ๅ€‹ๅฎŒๆ•ด็š„ๅ…จ็ซฏ AI ็ด„ๆœƒๅŠฉๆ‰‹ๅนณๅฐ๏ผŒๆไพ› 8 ็จฎ่ชžๆฐฃ้ขจๆ ผ็š„ๆ™บ่ƒฝๅ›ž่ฆ†็”Ÿๆˆ๏ผŒๆ”ฏๆŒ Android ๅ’Œ iOS ้ต็›คๆ•ดๅˆใ€‚

โœจ ไธป่ฆ็‰น่‰ฒ

๐Ÿค– AI ๆ™บ่ƒฝๅ›ž่ฆ†

  • 8 ็จฎ่ชžๆฐฃ้ขจๆ ผ: Humorous, High_EQ, Gentle, Cute, Romantic, Professional, Direct, Flirty
  • ็œŸๅฏฆ OpenAI ๆ•ดๅˆ: ไฝฟ็”จ GPT-4o-mini ๆจกๅž‹็”Ÿๆˆ่‡ช็„ถๅฐ่ฉฑ
  • ๅณๆ™‚็”Ÿๆˆ: ๆฏซ็ง’็ดš้Ÿฟๆ‡‰ๆ™‚้–“
  • ไธŠไธ‹ๆ–‡ๆ„Ÿ็Ÿฅ: ๆ”ฏๆŒๅฐ่ฉฑๆญทๅฒๅ’Œๆƒ…ๅขƒๅˆ†ๆž

๐Ÿ—๏ธ ๆŠ€่ก“ๆžถๆง‹

  • ๅพŒ็ซฏ: Spring Boot 3.2.1 + Spring AI + MySQL + Redis
  • ๅ‰็ซฏ: React 19 + TypeScript + Vite + Tailwind CSS
  • ็งปๅ‹•็ซฏ: Android (Jetpack Compose) + iOS (SwiftUI) ้ต็›ค App
  • ๅฎนๅ™จๅŒ–: Docker Compose ๅฎŒๆ•ด็ทจๆŽ’

๐Ÿ”’ ๅฎ‰ๅ…จๆ€ง

  • JWT ่ช่ญ‰็ณป็ตฑ
  • ็”จๆˆถ้…้ก็ฎก็†๏ผˆๅ…่ฒป/Premium๏ผ‰
  • OpenAI API Key ๅฎ‰ๅ…จ็ฎก็†
  • SQL ๆณจๅ…ฅ้˜ฒ่ญท

๐Ÿš€ ๅฟซ้€Ÿ้–‹ๅง‹

ๅ‰็ฝฎ้œ€ๆฑ‚

  • Docker & Docker Compose
  • Node.js 22.12.0 LTS
  • JDK 21
  • Git

ๅฎ‰่ฃๆญฅ้ฉŸ

  1. Clone ๅ„ฒๅญ˜ๅบซ
git clone https://github.com/yanchen184/TalkGenius.git
cd TalkGenius
  1. ่จญๅฎš็’ฐๅขƒ่ฎŠๆ•ธ
cd docker
cp .env.example .env
# ็ทจ่ผฏ .env ไธฆๅกซๅ…ฅไฝ ็š„ OpenAI API Key
  1. ๅ•Ÿๅ‹•ๆœๅ‹™
docker-compose up -d
  1. ๅ•Ÿๅ‹•ๅ‰็ซฏ UI
cd ../api-test-ui
npm install
npm run dev
  1. ่จชๅ•ๆ‡‰็”จ

๐Ÿ“Š ็ณป็ตฑๆžถๆง‹

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                     Mobile Apps                         โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        โ”‚
โ”‚  โ”‚   Android    โ”‚              โ”‚     iOS      โ”‚        โ”‚
โ”‚  โ”‚   Keyboard   โ”‚              โ”‚   Keyboard   โ”‚        โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        โ”‚
โ”‚         โ”‚                              โ”‚                โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
          โ”‚                              โ”‚
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                         โ”‚
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
          โ”‚      Spring Boot Backend     โ”‚
          โ”‚    (OpenAI + Spring AI)      โ”‚
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                 โ”‚                โ”‚
     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”
     โ”‚   MySQL 8.0  โ”‚      โ”‚  Redis 7  โ”‚
     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐ŸŽฏ ๆ”ฏๆด็š„่ชžๆฐฃ้ขจๆ ผ

่ชžๆฐฃ ๆ่ฟฐ ้ฉ็”จๅ ดๆ™ฏ
๐Ÿ˜„ Humorous ๅนฝ้ป˜้ขจ่ถฃ ่ผ•้ฌ†่Šๅคฉ
๐Ÿง  High_EQ ้ซ˜ๆƒ…ๅ•† ๆทฑๅ…ฅไบคๆต
๐Ÿ’• Gentle ๆบซๆŸ”้ซ”่ฒผ ้—œๅฟƒๅฎ‰ๆ…ฐ
๐Ÿฅฐ Cute ๅฏๆ„›ไฟ็šฎ ็”œ่œœไบ’ๅ‹•
๐Ÿ’– Romantic ๆตชๆผซๆทฑๆƒ… ่กจ้”ๆ„›ๆ„
๐Ÿ‘” Professional ๅฐˆๆฅญ็ฆฎ่ฒŒ ๆญฃๅผๆบ้€š
๐Ÿ’ฌ Direct ็›ดๆŽฅๅฆ็އ ๆ˜Ž็ขบ่กจ้”
๐Ÿ’‹ Flirty ้ญ…ๅŠ›ๆ’ฉไบบ ่ชฟๆƒ…ไบ’ๅ‹•

๐Ÿงช API ๆธฌ่ฉฆ

ไฝฟ็”จๅ‰็ซฏ UI (ๆŽจ่–ฆ)

  1. ่จชๅ• http://localhost:3001
  2. ๅœจ Auth ้ ็ฑค่จปๅ†Š/็™ปๅ…ฅ
  3. ๅœจ AI Test ้ ็ฑคๆธฌ่ฉฆ AI ๅ›ž่ฆ†็”Ÿๆˆ

ไฝฟ็”จ cURL

# ่จปๅ†Š
curl -X POST http://localhost:8080/api/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "test@example.com",
    "password": "password123",
    "displayName": "Test User"
  }'

# ็™ปๅ…ฅ
TOKEN=$(curl -X POST http://localhost:8080/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "test@example.com",
    "password": "password123"
  }' | jq -r '.token')

# ็”Ÿๆˆ AI ๅ›ž่ฆ†
curl -X POST http://localhost:8080/api/v1/ai/generate-reply \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
    "receivedMessage": "Hey, how was your day?",
    "toneStyle": "Humorous",
    "matchName": "Alice"
  }'

๐Ÿ“ ๅฐˆๆกˆ็ตๆง‹

TalkGenius/
โ”œโ”€โ”€ backend/                 # Spring Boot ๅพŒ็ซฏ
โ”‚   โ”œโ”€โ”€ src/main/java/
โ”‚   โ”‚   โ””โ”€โ”€ com/talkgenius/
โ”‚   โ”‚       โ”œโ”€โ”€ controller/  # REST API ๆŽงๅˆถๅ™จ
โ”‚   โ”‚       โ”œโ”€โ”€ service/     # ๆฅญๅ‹™้‚่ผฏ
โ”‚   โ”‚       โ”œโ”€โ”€ model/       # JPA ๅฏฆ้ซ”
โ”‚   โ”‚       โ””โ”€โ”€ security/    # JWT ่ช่ญ‰
โ”‚   โ””โ”€โ”€ pom.xml
โ”œโ”€โ”€ api-test-ui/            # React ๆธฌ่ฉฆ UI
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ components/     # React ็ต„ไปถ
โ”‚   โ”‚   โ””โ”€โ”€ App.tsx
โ”‚   โ””โ”€โ”€ package.json
โ”œโ”€โ”€ android/                # Android ้ต็›ค App
โ”‚   โ””โ”€โ”€ app/src/main/
โ”œโ”€โ”€ ios/                    # iOS ้ต็›ค App
โ”‚   โ””โ”€โ”€ TalkGenius/
โ””โ”€โ”€ docker/                 # Docker ้…็ฝฎ
    โ”œโ”€โ”€ docker-compose.yml
    โ””โ”€โ”€ mysql/init.sql

๐Ÿ”ง ้…็ฝฎ่ชชๆ˜Ž

็’ฐๅขƒ่ฎŠๆ•ธ (.env)

# OpenAI API
OPENAI_API_KEY=sk-proj-YOUR_OPENAI_API_KEY_HERE

# MySQL
MYSQL_ROOT_PASSWORD=your_root_password
MYSQL_USER=talkgenius
MYSQL_PASSWORD=your_password
MYSQL_DATABASE=talkgenius

# JWT Secret
JWT_SECRET=your-jwt-secret-key-minimum-32-chars

Spring AI ้…็ฝฎ (application.yml)

spring:
  ai:
    openai:
      api-key: ${OPENAI_API_KEY}
      chat:
        options:
          model: gpt-4o-mini
          temperature: 0.7
          max-tokens: 500

๐Ÿ“š ๆ–‡ไปถ

๐Ÿ› ๏ธ ้–‹็™ผๅทฅๅ…ท

  • IDE: IntelliJ IDEA / VS Code
  • API ๆธฌ่ฉฆ: Postman / Thunder Client
  • ่ณ‡ๆ–™ๅบซ: MySQL Workbench / DBeaver
  • ๅฎนๅ™จ: Docker Desktop

๐ŸŽฏ Roadmap

  • Spring Boot ๅพŒ็ซฏ API
  • OpenAI GPT-4o-mini ๆ•ดๅˆ
  • React ๆธฌ่ฉฆ UI
  • JWT ่ช่ญ‰็ณป็ตฑ
  • 8 ็จฎ่ชžๆฐฃ้ขจๆ ผ
  • Android ้ต็›คๅฎŒๆ•ดๅฏฆไฝœ
  • iOS ้ต็›คๅฎŒๆ•ดๅฏฆไฝœ
  • ๆƒ…็ท’ๅˆ†ๆžๅŠŸ่ƒฝ
  • ๅฐ่ฉฑๆญทๅฒ็ฎก็†
  • Premium ่จ‚้–ฑ็ณป็ตฑ
  • ๅคš่ชž่จ€ๆ”ฏๆŒ

๐Ÿ’ฐ ๆˆๆœฌไผฐ็ฎ—

ไฝฟ็”จ OpenAI GPT-4o-mini:

  • ๅƒนๆ ผ: $0.150 / 1M input tokens, $0.600 / 1M output tokens
  • ๅ–ฎๆฌก่ซ‹ๆฑ‚: ็ด„ 100-200 tokens
  • ้ ไผฐๆˆๆœฌ: ๆฏ 1000 ๆฌก่ซ‹ๆฑ‚ โ‰ˆ $0.10-0.20 USD

๐Ÿค ่ฒข็ป

ๆญก่ฟŽๆไบค Issue ๅ’Œ Pull Request๏ผ

๐Ÿ“„ ๆŽˆๆฌŠ

MIT License - ่ฉณ่ฆ‹ LICENSE

๐Ÿ‘จโ€๐Ÿ’ป ไฝœ่€…

Bob Chen

๐Ÿ™ ่‡ด่ฌ


๐Ÿค– Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

About

AI Dating Assistant Keyboard App - Full-stack platform with Spring Boot backend, React frontend, and mobile keyboard apps

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages