diff --git a/.env.default b/.env.default
new file mode 100644
index 00000000..b54e94db
--- /dev/null
+++ b/.env.default
@@ -0,0 +1,4 @@
+VITE_KAKAOMAP_APP_KEY
+VITE_APP_SERVER_URL
+VITE_APP_TOSS_CLIENT_KEY
+VITE_APP_TOSS_SECRET_KEY
\ No newline at end of file
diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index 0c993c81..6847345f 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -30,16 +30,23 @@ module.exports = {
'no-undef': 'off', // 'module' 관련 에러 방지
'react/jsx-no-useless-fragment': 'off', // React Fragment (<>>)가 단일 자식을 감쌀 때도 허용
'import/no-extraneous-dependencies': 'off',
+ 'react/no-array-index-key': 'off', // index key 이용
'react/function-component-definition': [
'off',
{
namedComponents: 'arrow-function',
},
], // 화살표 함수 이용
-
+ 'react/require-default-props': 'off',
'jsx-a11y/click-events-have-key-events': 'off',
'jsx-a11y/no-noninteractive-element-interactions': 'off',
-
+ 'jsx-a11y/label-has-associated-control': [
+ 2,
+ {
+ some: ['nesting', 'id'],
+ },
+ ],
+ 'no-param-reassign': 'off',
'@typescript-eslint/naming-convention': [
'error',
// 인터페이스 이름은 PascalCase를 사용하되, 'I'로 시작하지 않아야 함
diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml
new file mode 100644
index 00000000..b10b82cb
--- /dev/null
+++ b/.github/workflows/deployment.yml
@@ -0,0 +1,58 @@
+name: Front Deployment
+on:
+ push:
+ branches:
+ - develop
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout source code
+ uses: actions/checkout@v3
+
+ - name: Set up Node.js
+ uses: actions/setup-node@v3
+ with:
+ node-version: 16
+
+ - name: Cache node modules
+ uses: actions/cache@v3
+ with:
+ path: node_modules
+ key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }}
+ restore-keys: |
+ ${{ runner.OS }}-build-
+ ${{ runner.OS }}-
+
+ - name: Create .env file
+ run: |
+ touch .env
+ echo VITE_KAKAOMAP_APP_KEY=${{ secrets.VITE_KAKAOMAP_APP_KEY }} >> .env
+ echo VITE_APP_SERVER_URL=${{ secrets.VITE_APP_SERVER_URL }} >> .env
+ echo VITE_APP_TOSS_CLIENT_KEY=${{ secrets.VITE_APP_TOSS_CLIENT_KEY }} >> .env
+ cat .env
+
+ - name: Install Dependencies
+ run: npm install
+
+ - name: Build
+ run: npm run build
+
+ - name: Configure AWS credentials
+ uses: aws-actions/configure-aws-credentials@v2
+ with:
+ aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
+ aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
+ aws-region: ap-northeast-2
+
+ - name: Deploy to S3
+ uses: jakejarvis/s3-sync-action@master
+ with:
+ args: --acl public-read --follow-symlinks --delete
+ env:
+ SOURCE_DIR: './dist'
+ AWS_REGION: 'ap-northeast-2'
+ AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }}
+ AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
+ AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
diff --git a/README.md b/README.md
index 75742605..07afa0da 100644
--- a/README.md
+++ b/README.md
@@ -1,26 +1,284 @@
-# ROOM:IT
+# 📚 스터디룸 예약 플랫폼[ROOM:IT] 📚
+
-### 스터디룸 예약 플랫폼 - 🐝범블비팀 FE🐝
+## ✨ 프로젝트 소개
+Room:it은 기존 예약 시스템에 문제점을 파악하여 사용자에게 보다 효율적이고
+직관적인 서비스를 제공하는 **스터디룸 예약 및 관리 플랫폼**입니다.
+
+[🙋🏻♀ ROOM:IT 이용하기](https://d2tci4aoquuc80.cloudfront.net/)
-## 프로젝트 실행
+## ✨ 기획 배경
+> 최근 스터디룸에 대한 수요는 지속적으로 증가하고 있습니다.
+그러나 기존 예약 시스템은 사용자에게 최적의 공간을 추천하거나, 예약 과정에서의 편의성을 충분히 제공하지 못하는 경우가 많습니다.
-### Repository Clone
+이 프로젝트는 **사용자 경험 향상**과 **운영 효율성 극대화**를 목표로 기획되었습니다.
-```
-$ git clone https://github.com/prgrms-web-devcourse-final-project/WEB1_2_BUMBLEBEE_FE.git
-$ cd WEB1_2_BUMBLEBEE_FE
-```
+- **개인화 추천 시스템**을 통해 사용자가 선호하는 시간, 장소, 그리고 환경에 맞춘 스터디룸을 제공하여 선택의 편의성을 높이고,
+- **위치 기반 시스템**으로 사용자의 접근성을 강화하며,
+- **결제 프로세스 최적화**를 통해 빠르고 안정적인 예약 경험을 제공합니다.
-### Package Installation
+이를 통해 사용자에게는 최적화된 학습 공간을, 스터디룸 제공자에게는 효율적인 운영 도구를 제공하는 **윈-윈 플랫폼**을 구축하고자 합니다.
-```
-npm install
-```
-### Run
+
+
+## ✨ 프로젝트 기간
+- **기획 및 설계 :** 2024.11.06 ~ 2024.11.17
+- **개발 :** 2024.11.18 ~ 2024.12.09
+
+
+
+
+
+## ✨ 주요 기능
+
+
+ |
+
+
+ ✅ 위치 기반 시스템 |
+
+ |
+
+
+ ✅ 맞춤형 추천 시스템 |
+
+ |
+
+
+ ✅ 검색 필터링 |
+
+ |
+
+
+ ✅ 1:1 채팅 |
+
언어 | +
+ |
+
라이브러리 | +
+ |
+
빌드 | +
+ |
라우터 | +
+ |
+
상태관리 | +
+ |
API | +
+ |
실시간 통신 | +
+ |
+
스타일링 | +
+ |
포매터 | +
+ |
+
린터 | +
+ |
+
패키지 매니저 | +
+ |
+
배포 | +
+ |
협업 도구 | +
+ |
+