diff --git a/README.md b/README.md
new file mode 100644
index 0000000..71dacd6
--- /dev/null
+++ b/README.md
@@ -0,0 +1,305 @@
+
+
+# π§βπ« TeachING
+
+

+
+### ν©μ΄μ§ μ 보λ₯Ό μ°κ²°ν΄ λλ§μ μ§μμΌλ‘ λ§λλ AI νμ΅ μλΉμ€
+
+**URLλ‘ μ μ₯ν νμ΅ μλ£(λΈλ‘κ·Έ, μ νλΈ λ±)λ₯Ό AIκ° μλ λΆμΒ·μμ½νκ³ ,
+RAG κΈ°λ° μ±λ΄κ³Ό κ°μΈ λ§μΆ€ν νμ΅ κ²½λ‘ 'ν°μΉλ§΅'μ ν΅ν΄
+λ¨κ³λ³λ‘ νμ΅μ μ΄λμ΄μ£Όλ AI νμ΅ κ΄λ¦¬ μλΉμ€μ
λλ€.**
+
+
+
+
+
+
+
+
+
+

+

+

+
+
+
+
+
+## π μλΉμ€ μκ°
+
+TeachINGμ ν©μ΄μ§ μ¨λΌμΈ νμ΅ μλ£λ₯Ό νκ³³μ λͺ¨μΌκ³ , AIκ° νν°μ²λΌ ν¨κ» νμ΅μ μ΄λμ΄μ£Όλ κ°μΈ νμ΅ κ΄λ¦¬ μλΉμ€μ
λλ€.
+
+λΈλ‘κ·Έ, μ νλΈ λ±μμ λ°κ²¬ν μλ£μ URLμ μ μ₯νλ©΄ AIκ° μλμΌλ‘ λ³Έλ¬Έ(λλ μμ μ€ν¬λ¦½νΈ)μ λΆμν΄ μμ½κ³Ό μμΈ ν΄μ€μ μμ±νκ³ , λ²‘ν° κ²μ(RAG) κΈ°λ°μΌλ‘ μμΈν©λλ€. μ¬μ©μλ μ μ₯λ μλ£λ€μ ν΄λμ νκ·Έλ‘ μμ λ‘κ² μ 리ν μ μκ³ , κΆκΈν μ μ μ±ν
μΌλ‘ μ§λ¬Ένλ©΄ AIκ° λ΄κ° μ μ₯ν μλ£λ₯Ό κ·Όκ±°λ‘ λ΅λ³νλ©° β κ΄λ ¨ μλ£κ° μμ λλ μΌλ° μ§μμΌλ‘ 보μν΄ λ΅ν©λλ€.
+
+κ°μ₯ ν° νΉμ§μ **ν°μΉλ§΅**μ
λλ€. ν΄λ μμ μλ£λ€μ μμκ° μλ νμ΅ λ¨κ³λ‘ μ¬κ΅¬μ±ν΄, λ§μΉ 컀리νλΌμ²λΌ νλμ© λ°λΌκ°λ©° νμ΅ν μ μμ΅λλ€. κ° λ¨κ³μμ μ€μν λΆλΆμ νμ΄λΌμ΄νΈνλ©΄ μ¬μ©μκ° μ€μ ν μ±ν₯(λ€μ ν/μ격ν/μμνλ)μ 'AI μ μλ'μ΄ κ·Έ λΆλΆμ μ§μ΄ μ€λͺ
ν΄μ£Όκ³ , νμ΅ μ§νλ₯ λ ν¨κ» μΆμ λ©λλ€.
+
+μΉ΄μΉ΄μ€Β·κ΅¬κΈ μμ
λ‘κ·ΈμΈμΌλ‘ κ°νΈνκ² μμν μ μμΌλ©°, 무λ£/ν리미μ λ©€λ²μμ ν΅ν΄ λ λ§μ μλ£ μ μ₯κ³Ό ν΄λ μμ±μ΄ κ°λ₯ν©λλ€.
+
+
+
+## β¨ μ£Όμ κΈ°λ₯
+
+
+
+
+|
+
+### π μλ£ κ΄λ¦¬
+
+- λΈλ‘κ·Έ, μ νλΈ λ± **μ¨λΌμΈ μλ£μ URLμ μ μ₯**νλ©΄ AIκ° λ³Έλ¬Έ/μ€ν¬λ¦½νΈλ₯Ό μΆμΆν΄ **μμ½Β·μμΈ λΆμ** μμ±
+- λΆμ κ²°κ³Όλ chunkλ‘ λλ **Qdrantμ λ²‘ν° μμΈ**
+- AI μμ½/μμΈ λΆμμ **μ§μ μμ ** κ°λ₯
+- ν΄λ μμ±Β·μλ£ μ΄λΒ·νκ·ΈΒ·ν΄μ§ν΅μΌλ‘ μλ£ μ 리
+
+ |
+
+
+### π¬ μ±λ΄ (RAG)
+
+- μ±ν
λ°©μ λ§λ€κ³ λ΄κ° μ μ₯ν μλ£μ λν΄ **μμ λ‘κ² μ§λ¬Έ**
+- μ§λ¬Έμ **λ²‘ν° κ²μ**μΌλ‘ κ΄λ ¨ μλ£λ₯Ό μ°Ύμ κ·Όκ±°λ‘ λ΅λ³ μμ±
+- κ΄λ ¨ μλ£κ° μμΌλ©΄ **μΌλ° μ§μ κΈ°λ° fallback** μλ΅
+- λ΅λ³μ μΈμ©λ **μΆμ² μλ£** ν¨κ» νμ
+
+ |
+
+
+
+
+
+
+
+|
+
+### πΊοΈ ν°μΉλ§΅
+
+- ν΄λ μ μλ£λ€μ μμκ° μλ **νμ΅ μ€ν
**μΌλ‘ μ¬κ΅¬μ±
+- νμ΄λΌμ΄νΈν λΆλΆμ **AI μ μλ ν΄μ€** μ 곡
+- λ§ν¬λ **λ€μ ν / μ격ν / μμνλ** νλ₯΄μλ μ€ μ ν
+- μ€ν
μλ£ ν κΈλ‘ **μ§νλ₯ ** μλ κ°±μ , μμμ μ₯ μ§μ
+
+ |
+
+
+### π μΈμ¦ & λ©€λ²μ
+
+- **μΉ΄μΉ΄μ€ Β· ꡬκΈ** OAuth2 μμ
λ‘κ·ΈμΈ, JWT κΈ°λ° μΈμ¦
+- **μΉ΄μΉ΄μ€νμ΄** μ°λ TeachING Plus ꡬλ
κ²°μ
+- **FREE / PREMIUM** λ©€λ²μ λ±κΈ ꡬλΆ
+- λ§μ΄νμ΄μ§μμ νλ‘ν Β· μλ¦Ό Β· AI μ μλ μ€μ κ΄λ¦¬
+
+ |
+
+
+
+
+
+
+## π κΈ°μ μ€ν
+
+
+
+**Backend**
+
+
+
+
+
+
+
+
+
+**Database**
+
+
+
+
+**AI Β· μλ£ μμ§**
+
+
+
+
+
+
+**κ²°μ Β· Infra Β· CI/CD**
+
+
+
+
+
+
+
+
+
+
+
+**Docs**
+
+
+
+
+
+
+
+## π μν€ν
μ²
+
+
+
+

+
+
+
+
+
+## πΏ νμ
κ·μΉ
+
+| κ΅¬λΆ | λ΄μ© |
+| --- | --- |
+| πΏ **λΈλμΉ** | `type/#μ΄μλ²νΈ/μ€λͺ
` (μ: `feat/#69/material-url`) β `main` μΌλ‘ PR |
+| π **컀λ°** | `Type: μ€λͺ
` (`Feat` `Fix` `Docs` `Test` `Refactor` `Chore` λ±) |
+| π **PR** | GitHub Actions **CI(Gradle λΉλ) ν΅κ³Ό** ν λ¨Έμ§ |
+| π **λ°°ν¬** | `main` push μ ECR μ΄λ―Έμ§ λΉλ β EC2 Docker Compose μλ λ°°ν¬ |
+
+
+
+## π₯ νμ
+
+
+
+
+
+## π μ μ₯μ ꡬ쑰
+
+```
+backend/
+βββ src/main/java/com/teaching/backend/
+β βββ domain/ λλ©μΈλ³ ν¨ν€μ§ (controller Β· service Β· entity Β· repository Β· dto)
+β β βββ auth Β· user Β· material Β· folder Β· chat
+β β βββ teachingmap Β· trash Β· tag Β· notification
+β β βββ payment Β· term Β· home Β· support
+β βββ global/ κ³΅ν΅ μ€μ (security Β· config Β· ai Β· storage Β· exception Β· response)
+βββ docker-compose.yml app(Spring Boot) + qdrant 컨ν
μ΄λ ꡬμ±
+βββ .github/workflows/ CI(λΉλ κ²μ¦) Β· CD(ECR/EC2 λ°°ν¬) μν¬νλ‘
+```
+
+
+
+
+π λλ©μΈλ³ μμΈ API λͺ
μΈ (νΌμ³λ³΄κΈ°)
+
+### Auth (`/api/v1/auth`)
+- `POST /reissue` β AccessToken μ¬λ°κΈ
+- `POST /signup` β νμκ°μ
(λλ€μ νμ Β· μ½κ΄ λμ λ±λ‘)
+- `POST /logout` β λ‘κ·Έμμ
+- `GET /check-nickname` β λλ€μ μ€λ³΅ νμΈ
+- `GET /oauth2/authorization/{kakao|google}` β μμ
λ‘κ·ΈμΈ μ§μ
μ
+
+### User (`/users`)
+- `GET /me` β λ΄ μ 보 μ‘°ν
+- `PATCH /me` β νλ‘ν μμ (multipart)
+- `PATCH /me/notifications` β μλ¦Ό μ€μ λ³κ²½
+- `DELETE /me` β νμ νν΄
+- `PATCH /me/teacher-persona` β AI μ μλ νλ₯΄μλ λ³κ²½
+
+### Material (`/materials`, `/api/v1/materials`)
+- `GET /materials` β μλ£ λͺ©λ‘ μ‘°ν
+- `POST /materials/{materialId}/index` β μλ£ μμΈ(Qdrant)
+- `POST /api/v1/materials/analyze` β URL κΈ°λ° AI λΆμ μμ²
+- `PATCH /api/v1/materials/{materialId}/finalize` β λΆμ κ²°κ³Ό μ μ₯ νμ
+
+### Folder (`/api/folders`)
+- `GET /` Β· `POST /` β ν΄λ λͺ©λ‘ μ‘°ν Β· μμ±
+- `GET /{folderId}` Β· `PATCH /{folderId}` β ν΄λ μμΈ μ‘°ν Β· μ΄λ¦ μμ
+- `GET /{folderId}/materials` β ν΄λ λ΄ μλ£ λͺ©λ‘
+- `PATCH /{folderId}/trash` Β· `PATCH /{folderId}/restore` β ν΄λ ν΄μ§ν΅ μ΄λ Β· 볡ꡬ
+- `GET/PATCH /{folderId}/materials/{materialId}/analysis(/summary|/detail)` β AI λΆμ μ‘°ν Β· μμ
+- `GET /{folderId}/materials/{materialId}/tags` β νκ·Έ μ‘°ν
+- `GET /{folderId}/materials/{materialId}/origin-url` β μλ³Έ URL μ‘°ν
+- `PATCH /{folderId}/materials/move|trash|restore` β μλ£ μ΄λ Β· ν΄μ§ν΅ μ΄λ Β· 볡ꡬ
+
+### ChatRoom / ChatMessage (`/chatrooms`)
+- `GET /` Β· `POST /` β μ±ν
λ°© λͺ©λ‘ μ‘°ν(컀μ νμ΄μ§λ€μ΄μ
) Β· μμ±
+- `GET /{chatRoomId}/messages` β λ©μμ§ νμ€ν 리 μ‘°ν(μΆμ² ν¬ν¨)
+- `POST /{chatRoomId}/messages` β μ§λ¬ΈνκΈ°(RAG κΈ°λ° λ΅λ³ μμ±)
+
+### TeachingMap (`/api/v1/teaching-maps`)
+- `GET /` Β· `POST /` β ν°μΉλ§΅ λͺ©λ‘ μ‘°ν Β· μμ±(ν΄λ κΈ°λ°)
+- `GET /{teachingMapId}` Β· `PATCH /{teachingMapId}` β λ¨κ±΄ μ‘°ν Β· μ λͺ©/μ€λͺ
μμ
+- `GET /{teachingMapId}/steps/{stepId}` β μ€ν
μμΈ μ‘°ν
+- `PATCH /{teachingMapId}/steps/{stepId}/toggle` β μ€ν
μλ£ ν κΈ
+- `GET /materials/{materialId}/highlights/{highlightId}/analysis` β νμ΄λΌμ΄νΈ AI μ μλ ν΄μ€ μ‘°ν/μμ±
+- `PATCH /trash` β ν°μΉλ§΅ λ€μ€ ν΄μ§ν΅ μ΄λ
+- `POST /temp` β μμμ μ₯
+
+### Trash (`/api/v1/trash`)
+- `GET /folders|materials|teaching-maps` β ν΄μ§ν΅ λͺ©λ‘ μ‘°ν
+- `GET /folders/{folderId}/materials` β ν΄μ§ν΅ ν΄λ μμΈ(λ΄λΆ μλ£) μ‘°ν
+- `PATCH /folders|materials|teaching-maps/restore` β λ€μ€ 볡ꡬ
+
+### Notification (`/api/v1/notifications`)
+- `GET /` Β· `GET /summary` β μλ¦Ό λͺ©λ‘ Β· μμ½ μ‘°ν
+- `PATCH /{notificationId}/read` β μ½μ μ²λ¦¬
+
+### Payment (`/api/v1/payments`)
+- `POST /ready` β ꡬλ
κ²°μ μ€λΉ(μΉ΄μΉ΄μ€νμ΄)
+- `GET /success|cancel|fail` β κ²°μ κ²°κ³Ό μ½λ°±
+
+### Term (`/api/v1/terms`)
+- `GET /` β μ½κ΄ λͺ©λ‘ μ‘°ν
+
+### Home (`/api/v1/home`)
+- `GET /` β ν λμ보λ μ‘°ν
+
+
+
+
+
+
+
+**π§βπ« TeachING** Β· Made with care by the TeachING-Dev team
+
+2026. 08. 13. ver.
+
+
diff --git a/images/architecture.png b/images/architecture.png
new file mode 100644
index 0000000..6685690
Binary files /dev/null and b/images/architecture.png differ
diff --git a/images/teaching-overview.png b/images/teaching-overview.png
new file mode 100644
index 0000000..6bd6590
Binary files /dev/null and b/images/teaching-overview.png differ