Skip to content

MinSeok-log/-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

연구의숲 (Research Forest)

연구실 협업을 위한 통합 플랫폼


기술 스택

Frontend Backend Database
React 18 FastAPI MongoDB
React Router v6 Python 3.11+
Context API JWT Auth

프로젝트 구조

.
├── frontend/          # React 프론트엔드
│   └── src/
│       ├── api/       # API 호출 함수
│       ├── components/# 재사용 컴포넌트
│       ├── config/    # 설정 (게시판 등)
│       ├── contexts/  # 전역 상태
│       ├── pages/     # 페이지 컴포넌트
│       ├── services/  # 인증/API 서비스
│       └── utils/     # 유틸리티
│
├── backend/           # FastAPI 백엔드
│   └── app/
│       ├── core/      # 설정, DB 연결
│       ├── models/    # 데이터 모델
│       ├── routers/   # API 엔드포인트
│       ├── schemas/   # Pydantic 스키마
│       ├── services/  # 비즈니스 로직
│       └── utils/     # 유틸리티
│
└── docs/              # 개발 문서

문서

문서 설명
PROJECT_STRUCTURE.md 프로젝트 전체 구조 및 개요
FRONTEND_GUIDE.md 프론트엔드 상세 가이드
BACKEND_GUIDE.md 백엔드 상세 가이드
QUICK_REFERENCE.md 빠른 참조 치트시트
ARCHITECTURE.md 시스템 아키텍처 다이어그램

시작하기

필수 환경

  • Node.js 18+
  • Python 3.11+
  • MongoDB

Frontend 실행

cd frontend/frontend
npm install
npm start

Backend 실행

cd backend/backend
pip install -r requirements.txt
python run_server.py

환경변수 설정

Backend .env 파일 생성:

HOST_IP=your-server-ip
MONGO_URI=mongodb://localhost:27017
SECRET_KEY=your-jwt-secret-key
DATABASE_NAME=research_forest

주요 기능

  • 게시판 시스템 (자유게시판, 연구자료, 논문게시판 등)
  • 사용자 인증 (회원가입, 로그인, 이메일 인증)
  • 파일 첨부 및 관리
  • 실시간 채팅 (WebSocket)
  • AI 연동 기능
  • 관리자 대시보드

새 게시판 추가

frontend/frontend/src/config/boardConfig.js 파일에 설정 추가:

'새게시판': {
  name: '새게시판',
  title: '새 게시판',
  description: '설명',
  apiCategory: '새게시판',
  routePath: '/community/새게시판',
  // ... 기타 설정
}

별도 라우터 추가 없이 자동으로 동작합니다.


API 엔드포인트

구분 Prefix 설명
인증 /api/auth 로그인, 회원가입, 토큰
게시판 /api/board 게시글 CRUD
첨부파일 /api/attachment 파일 업로드/다운로드
채팅 /api/chat 채팅 REST API
관리자 /api/admin 사용자/시스템 관리
WebSocket /ws 실시간 통신

기여 방법

  1. 이 저장소를 Fork
  2. 기능 브랜치 생성 (git checkout -b feature/기능명)
  3. 변경사항 커밋 (git commit -m '기능 추가')
  4. 브랜치에 Push (git push origin feature/기능명)
  5. Pull Request 생성

라이선스

Private - 연구실 내부용

About

연구의숲은 연구실 구성원의 연구 활동과 내부 운영을 체계적으로 기록하고 공유하기 위한 공간입니다. 연구 과정에서 생성되는 문서, 자료, 코드, 데이터 등을 구조적으로 관리하는 것을 목표로 합니다. 연구 및 운영 관련 문서는 docs 디렉터리에 정리되어 있습니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors