Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
yeopyeop-82 authored Feb 23, 2024
1 parent 0f138f5 commit 18fa658
Showing 1 changed file with 227 additions and 1 deletion.
228 changes: 227 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,227 @@
# MEME_SERVICE
# MEME-SERVICE

<div align="center">

</div>
<br> **UMC 5기 프로젝트** <br/> **개발기간: 2024.01 ~ 진행중**

## 배포 주소

> **개발 버전** : 링크예시 <br>
> **백엔드 서버** : [http://voluntain.cs.skku.edu:2223/](http://voluntain.cs.skku.edu:2223/)<br>
## 팀 소개

| 임재영 | 김다은 | 김승엽 | 박선우 |
| :------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| <img src="https://avatars.githubusercontent.com/u/55044278?v=4" width=90px alt="제이스(임재영)"/> | <img src="https://avatars.githubusercontent.com/u/122000839?v=4" width=90px alt="돌리(김다은)"/> | <img src="https://avatars.githubusercontent.com/u/61226778?v=4" width=90px alt="요비(김승엽)"/> | <img src="https://avatars.githubusercontent.com/u/52268188?v=4" width=90px alt="썬(박선우)"/>
| [@parkjiye](https://github.com/parkjiye) | [@ChaeyeonSeo](https://github.com/ChaeyeonSeo) | [@hyunjeong408](https://github.com/hyunjeong408) |
| 상명대학교 컴퓨터과학과 | 숭실대학교 컴퓨터공학과 | 상명대학교 컴퓨터과학과 | 경희대학교 컴퓨터공학과 |

## 프로젝트 소개

## 시작 가이드

### Requirements
For building and running the application you need:


### Installation

``` bash
$ git clone https://github.com/Voluntain-SKKU/Voluntain-2nd.git
$ cd Voluntain-2nd
```
#### Backend
```
$ cd strapi-backend
$ nvm use v.14.19.3
$ npm install
$ npm run develop
```

#### Frontend
```
$ cd voluntain-app
$ nvm use v.14.19.3
$ npm install
$ npm run dev
```

---

## Stacks 🐈

### Environment
![Visual Studio Code](https://img.shields.io/badge/Visual%20Studio%20Code-007ACC?style=for-the-badge&logo=Visual%20Studio%20Code&logoColor=white)
![Git](https://img.shields.io/badge/Git-F05032?style=for-the-badge&logo=Git&logoColor=white)
![Github](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=GitHub&logoColor=white)

### Config
![npm](https://img.shields.io/badge/npm-CB3837?style=for-the-badge&logo=npm&logoColor=white)

### Development
![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=Javascript&logoColor=white)
![React](https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB)
![Strapi](https://img.shields.io/badge/Strapi-2F2E8B?style=for-the-badge&logo=Strapi&logoColor=white)
![Next.js](https://img.shields.io/badge/Next.js-000000?style=for-the-badge&logo=Next.js&logoColor=white)
![Bootstrap](https://img.shields.io/badge/Bootstrap-7952B3?style=for-the-badge&logo=Bootstrap&logoColor=white)
![Material UI](https://img.shields.io/badge/Material%20UI-007FFF?style=for-the-badge&logo=MUI&logoColor=white)

### Communication
![Slack](https://img.shields.io/badge/Slack-4A154B?style=for-the-badge&logo=Slack&logoColor=white)
![Notion](https://img.shields.io/badge/Notion-000000?style=for-the-badge&logo=Notion&logoColor=white)
![GoogleMeet](https://img.shields.io/badge/GoogleMeet-00897B?style=for-the-badge&logo=Google%20Meet&logoColor=white)

---
## 화면 구성 📺
| 메인 페이지 | 소개 페이지 |
| :-------------------------------------------: | :------------: |
| <img width="329" src="https://user-images.githubusercontent.com/50205887/208036155-a57900f7-c68a-470d-923c-ff3c296ea635.png"/> | <img width="329" src="https://user-images.githubusercontent.com/50205887/208036645-a76cf400-85bc-4fa2-af72-86d2abf61366.png"/>|
| 강좌 소개 페이지 | 강의 영상 페이지 |
| <img width="329" src="https://user-images.githubusercontent.com/50205887/208038737-2b32b7d2-25f4-4949-baf5-83b5c02915a3.png"/> | <img width="329" src="https://user-images.githubusercontent.com/50205887/208038965-43a6318a-7b05-44bb-97c8-b08b0495fba7.png"/> |

---
## 주요 기능 📦

### ⭐️ 강좌 선택 및 강의 영상 시청 기능
- Scratch, Python 2개 강좌 및 각 강좌마다 10개 가량의 강의 영상 제공
- 추후 지속적으로 강좌 추가 및 업로드 예정

### ⭐️ 강의 관련 및 단체에 대한 자유로운 댓글 작성 가능
- Disqus를 이용하여 강의 관련 질문이나 단체에 대한 질문 작성 가능

### ⭐️ 이어 학습하기 기능
- Cookie 기능을 이용하여 이전에 학습했던 내용 이후부터 바로 학습 가능

---
## 아키텍쳐

### 디렉토리 구조
```bash
├── README.md
├── package-lock.json
├── package.json
├── strapi-backend :
│ ├── README.md
│ ├── api : db model, api 관련 정보 폴더
│ │ ├── about
│ │ ├── course
│ │ └── lecture
│ ├── config : 서버, 데이터베이스 관련 정보 폴더
│ │ ├── database.js
│ │ ├── env : 배포 환경(NODE_ENV = production) 일 때 설정 정보 폴더
│ │ ├── functions : 프로젝트에서 실행되는 함수 관련 정보 폴더
│ │ └── server.js
│ ├── extensions
│ │ └── users-permissions : 권한 정보
│ ├── favicon.ico
│ ├── package-lock.json
│ ├── package.json
│ └── public
│ ├── robots.txt
│ └── uploads : 강의 별 사진
└── voluntain-app : 프론트엔드
├── README.md
├── components
│ ├── CourseCard.js
│ ├── Footer.js
│ ├── LectureCards.js
│ ├── MainBanner.js : 메인 페이지에 있는 남색 배너 컴포넌트, 커뮤니티 이름과 슬로건을 포함.
│ ├── MainCard.js
│ ├── MainCookieCard.js
│ ├── NavigationBar.js : 네비게이션 바 컴포넌트, _app.js에서 공통으로 전체 페이지에 포함됨.
│ ├── RecentLecture.js
│ └── useWindowSize.js
├── config
│ └── next.config.js
├── lib
│ ├── context.js
│ └── ga
├── next.config.js
├── package-lock.json
├── package.json
├── pages
│ ├── _app.js
│ ├── _document.js
│ ├── about.js
│ ├── course
│ ├── index.js
│ ├── lecture
│ ├── newcourse
│ ├── question.js
│ └── setting.js
├── public
│ ├── favicon.ico
│ └── logo_about.png
└── styles
└── Home.module.css

```

<!--
```bash
├── README.md : 리드미 파일
├── strapi-backend/ : 백엔드
│ ├── api/ : db model, api 관련 정보 폴더
│ │ └── [table 이름] : database table 별로 분리되는 api 폴더 (table 구조, 해당 table 관련 api 정보 저장)
│ │ ├── Config/routes.json : api 설정 파일 (api request에 따른 handler 지정)
│ │ ├── Controllers/ [table 이름].js : api controller 커스텀 파일
│ │ ├── Models : db model 관련 정보 폴더
│ │ │ ├── [table 이름].js : (사용 X) api 커스텀 파일
│ │ │ └── [table 이름].settings.json : model 정보 파일 (field 정보)
│ │ └─── Services/ course.js : (사용 X) api 커스텀 파일
│ │
│ ├── config/ : 서버, 데이터베이스 관련 정보 폴더
│ │ ├── Env/production : 배포 환경(NODE_ENV = production) 일 때 설정 정보 폴더
│ │ │ └── database.js : production 환경에서 database 설정 파일
│ │ ├── Functions : 프로젝트에서 실행되는 함수 관련 정보 폴더
│ │ │ │ ├── responses : (사용 X) 커스텀한 응답 저장 폴더
│ │ │ │ ├── bootstrap.js : 어플리케이션 시작 시 실행되는 코드 파일
│ │ │ │ └── cron.js : (사용 X) cron task 관련 파일
│ │ ├── database.js : 기본 개발 환경(NODE_ENV = development)에서 database 설정 파일
│ │ └── server.js : 서버 설정 정보 파일
│ │
│ ├── extensions/
│ │ └── users-permissions/config/ : 권한 정보
│ │
│ └── public/
│ └── uploads/ : 강의 별 사진
└── voluntain-app/ : 프론트엔드
├── components/
│ ├── NavigationBar.js : 네비게이션 바 컴포넌트, _app.js에서 공통으로 전체 페이지에 포함됨.
│ ├── MainBanner.js : 메인 페이지에 있는 남색 배너 컴포넌트, 커뮤니티 이름과 슬로건을 포함.
│ ├── RecentLecture.js : 사용자가 시청 정보(쿠키)에 따라, 현재/다음 강의를 나타내는 컴포넌트 [호출: MainCookieCard]
│ ├── MainCookieCard.js : 상위 RecentLecture 컴포넌트에서 전달받은 props를 나타내는 레이아웃 컴포넌트.
│ ├── MainCard.js : 현재 등록된 course 정보를 백엔드에서 받아서 카드로 나타내는 컴포넌트 [호출: CourseCard]
│ └── CourseCard.js : 상위 MainCard 컴포넌트에서 전달받은 props를 나타내는 레이아웃 컴포넌트
├── config/
│ └── next.config.js
├── lib/
│ └── ga/
│ │ └── index.js
│ └── context.js
├── pages/
│ ├── courses/
│ │ └── [id].js : 강의 페이지
│ ├── _app.js : Next.js에서 전체 컴포넌트 구조를 결정, 공통 컴포넌트(navbar, footer)가 선언되도록 customizing 됨.
│ ├── _document.js : Next.js에서 전체 html 문서의 구조를 결정, lang 속성과 meta tag가 customizing 됨.
│ ├── about.js : 단체 소개 페이지
│ ├── index.js : 메인 페이지
│ ├── question.js : Q&A 페이지
│ └── setting.js : 쿠키, 구글 애널리틱스 정보 수집 정책 페이지
├── public/
│ ├── favicon.ico : 네비게이션바 이미지
│ └── logo_about.png : about 페이지 로고 이미지
└── styles/
└── Home.module.css
```
-->

0 comments on commit 18fa658

Please sign in to comment.