Add README files for root, backend, and frontend
This commit is contained in:
parent
c1da47f057
commit
930d6c3d7f
3 changed files with 215 additions and 0 deletions
92
README.md
Normal file
92
README.md
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
# 📧 Mailbox
|
||||
|
||||
셀프 호스팅 이메일 클라이언트 애플리케이션입니다.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
---
|
||||
|
||||
## ✨ 주요 기능
|
||||
|
||||
- 📬 **이메일 송수신** - SMTP/IMAP 프로토콜 지원
|
||||
- 🤖 **AI 번역** - Google Gemini API 연동
|
||||
- 📎 **첨부파일** - S3 호환 스토리지 업로드
|
||||
- 🔍 **고급 검색** - 다양한 필터 옵션
|
||||
- 🛡️ **스팸 필터** - Rspamd 연동
|
||||
- 👥 **다중 사용자** - 관리자 대시보드
|
||||
|
||||
---
|
||||
|
||||
## 📁 프로젝트 구조
|
||||
|
||||
```
|
||||
mailbox/
|
||||
├── frontend/ # React + Vite 프론트엔드
|
||||
├── backend/ # Node.js + Express 백엔드
|
||||
├── rspamd/ # 스팸 필터 설정
|
||||
└── docker-compose.yml # Docker Compose 설정
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 기술 스택
|
||||
|
||||
### Frontend
|
||||
|
||||
| 기술 | 설명 |
|
||||
| --------------- | -------------- |
|
||||
| **React 18** | UI 라이브러리 |
|
||||
| **Vite** | 빌드 도구 |
|
||||
| **TailwindCSS** | CSS 프레임워크 |
|
||||
|
||||
### Backend
|
||||
|
||||
| 기술 | 설명 |
|
||||
| -------------- | ------------- |
|
||||
| **Node.js** | 런타임 환경 |
|
||||
| **Express** | 웹 프레임워크 |
|
||||
| **MariaDB** | 데이터베이스 |
|
||||
| **Nodemailer** | 이메일 전송 |
|
||||
| **IMAP** | 이메일 수신 |
|
||||
|
||||
### 인프라
|
||||
|
||||
| 기술 | 설명 |
|
||||
| ---------- | ----------- |
|
||||
| **Rspamd** | 스팸 필터링 |
|
||||
| **Redis** | 캐시 서버 |
|
||||
| **RustFS** | S3 스토리지 |
|
||||
|
||||
---
|
||||
|
||||
## 🚀 실행 방법
|
||||
|
||||
### Docker (권장)
|
||||
|
||||
```bash
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
### 개발 모드
|
||||
|
||||
```bash
|
||||
# 백엔드
|
||||
cd backend && npm install && npm start
|
||||
|
||||
# 프론트엔드
|
||||
cd frontend && npm install && npm run dev
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌐 접속
|
||||
|
||||
- **URL**: https://mailbox.caadiq.co.kr
|
||||
|
||||
---
|
||||
|
||||
## 📄 라이선스
|
||||
|
||||
MIT License
|
||||
63
backend/README.md
Normal file
63
backend/README.md
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
# 🖥️ Mailbox - Backend
|
||||
|
||||
이메일 송수신 및 관리를 위한 Node.js API 서버입니다.
|
||||
|
||||

|
||||

|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 기술 스택
|
||||
|
||||
| 기술 | 설명 |
|
||||
| -------------- | ------------- |
|
||||
| **Node.js** | 런타임 환경 |
|
||||
| **Express** | 웹 프레임워크 |
|
||||
| **Sequelize** | ORM |
|
||||
| **Nodemailer** | SMTP 전송 |
|
||||
| **IMAP** | 이메일 수신 |
|
||||
| **JWT** | 인증 |
|
||||
|
||||
---
|
||||
|
||||
## 📡 API 엔드포인트
|
||||
|
||||
### 인증
|
||||
|
||||
- `POST /api/auth/login` - 로그인
|
||||
- `POST /api/auth/logout` - 로그아웃
|
||||
|
||||
### 이메일
|
||||
|
||||
- `GET /api/emails` - 이메일 목록
|
||||
- `GET /api/emails/:id` - 이메일 상세
|
||||
- `POST /api/emails/send` - 이메일 전송
|
||||
- `DELETE /api/emails/:id` - 이메일 삭제
|
||||
|
||||
### 관리자
|
||||
|
||||
- `GET /api/admin/users` - 사용자 관리
|
||||
- `GET /api/admin/dashboard` - 대시보드 통계
|
||||
|
||||
---
|
||||
|
||||
## 🚀 실행 방법
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm start
|
||||
```
|
||||
|
||||
서버는 **포트 3000**에서 실행됩니다.
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ 환경 변수
|
||||
|
||||
| 변수 | 설명 |
|
||||
| ------------- | --------------------- |
|
||||
| `DB_HOST` | 데이터베이스 호스트 |
|
||||
| `DB_USER` | 데이터베이스 사용자 |
|
||||
| `DB_PASSWORD` | 데이터베이스 비밀번호 |
|
||||
| `DB_NAME` | 데이터베이스 이름 |
|
||||
| `JWT_SECRET` | JWT 시크릿 키 |
|
||||
60
frontend/README.md
Normal file
60
frontend/README.md
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
# 🎨 Mailbox - Frontend
|
||||
|
||||
이메일 클라이언트의 웹 인터페이스입니다.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 기술 스택
|
||||
|
||||
| 기술 | 설명 |
|
||||
| ---------------- | -------------- |
|
||||
| **React 18** | UI 라이브러리 |
|
||||
| **Vite** | 빌드 도구 |
|
||||
| **TailwindCSS** | CSS 프레임워크 |
|
||||
| **Lucide React** | 아이콘 |
|
||||
|
||||
---
|
||||
|
||||
## ✨ 주요 기능
|
||||
|
||||
- 📬 **메일 목록** - 받은편지함, 보낸편지함, 스팸함
|
||||
- ✏️ **메일 작성** - 리치 텍스트 에디터
|
||||
- 📎 **첨부파일** - 드래그 앤 드롭 업로드
|
||||
- 🔍 **검색** - 고급 필터 옵션
|
||||
- 🤖 **AI 번역** - Gemini API 연동
|
||||
- 👨💼 **관리자** - 사용자 및 시스템 관리
|
||||
|
||||
---
|
||||
|
||||
## 🚀 실행 방법
|
||||
|
||||
### 개발 모드
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 프로덕션 빌드
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📁 구조
|
||||
|
||||
```
|
||||
frontend/
|
||||
├── src/
|
||||
│ ├── components/ # UI 컴포넌트
|
||||
│ ├── context/ # React Context
|
||||
│ ├── hooks/ # 커스텀 훅
|
||||
│ └── utils/ # 유틸리티 함수
|
||||
└── public/ # 정적 파일
|
||||
```
|
||||
Loading…
Add table
Reference in a new issue