🏢 COMPANY-SOURCE 🏢

기업의 정보를 보다 편하고 전문적으로 알려주는 사이트

image





😀 프로젝트 소개 😀


✏ 프로젝트명

  • COMPANY-SOURCE(컴퍼니소스)

💖 서비스 소개

  • 취업이나 기업에 대해 알기 위해서 기업을 분석하는것이 점차 늘어나고 있습니다. 하지만 복잡한 계산식과 어려운 설명이 되어있는 기업분석은 사용자가 쉽게 접하지 못합니다. 따라서 컴퍼니 소스는 이를 보다 편하지만 전문적인 정보를 제공합니다.

👤 서비스 대상

  • 기업에 대한 분석을 보다 쉽게 찾아보고 싶은 사람

☝🏻 주요 기능

  • 기업 분석
  • 기업 비교
  • 커뮤니티

🎠 배포 환경

🗓 진행 일정

  • 23.04.10 ~ 23.05.19 (총 6주)

🚩 프로젝트 요약

Application Language Framework DB
✅ Desktop Web ✅ JavaScript 🔲 Vue.js ✅ Mysql
🔲 Mobile Web ✅ TypeScript ✅ React ✅ MongoDB
🔲 Responsive Web 🔲 C/C++ ✅ NEXT.JS ✅ Redis
🔲 Android App 🔲 C# 🔲 Node.js
🔲 iOS App ✅ Python 🔲 Flask/Django
🔲 Desktop App ✅ Java ✅ Spring/Springboot


👨 팀 소개 - 🏢컴퍼니소스🏢

김진호 김성준 한인환 이강윤 박승재 최현호
image image image image image image






📢 주요 기능 📢

기업 분석

  • 간편하게 검색해서 한눈에 보는 기업분석

1️⃣ 추천 기업

  • 산업별, 평가 양호별, 조회수 등 다양한 방식 기업 추천
  • 다양한 기업을 클릭 할 수 있도록 랜덤 기업 목록 제공

렌딩에서검색까지

2️⃣ 기업 정보 및 기업 분석

  • DART에서 받아온 기업 데이터를 가져오고 각종 분석법으로 계산하여 시각화
  • 한 페이지에 기업 개요와 기업 분석
  • 단순 기업 개요뿐만 아니라 CHAT-GPT의 한마디

검색결과부터기업분석까지


기업분석에서설명까지

기업 비교

  • 한 기업이 아닌 두 기업을 한눈에 비교하여 확인

ezgif com-resize



커뮤니티

  • 기업분석자유게시판 2가지 게시판 종류
  • 커뮤니티 특성에 따라 글 작성

ezgif com-resize





🛠 기술 🛠

⚠ 개발 에러 및 로그 슈팅 ⚠

  • 메타모스트 <--> 깃랩 연동으로 merge request 확인 및 팀원 작업 현황 확인

image

  • 백엔드 에러시 mm에 에러 슈팅

image



🧮 분석법 계산 🧮

  • dart api를 통해 받은 데이터를 가공하여 저장 후, 분석기법에 따라서 재가공하여 저장

image



⚡ 서버사이드 렌더링 ⚡

  • Next.js 프레임워크를 이용하여 server side rendering을 적용

  • 빠른 초기 로딩속도

image

  • 검색 엔진 최적화 : google 검색 및 sns 링크 공유

컴퍼니소스 구글 검색

image





🔧 기술 스택 🔧

**[ Backend ]**
- Java `11`
- MySQL `8.0.30`
- SpringBoot `2.7.10`
- Spring Data JPA `2.7.10`
- Gradle `7.6.1`
- Lombok
- Swagger `2.8.0`
- Spring Security
- JWT `0.9.1`
- Jasyp `3.0.3`
- Python `3.10.10`

**[ Frontend ]**
- npm `9.6.2`
- node `18.12.1`
- typescript `5.0.4`
- tailwindcss `3.3.1`
- next `13.3.0`
- react-redux `8.0.5`
- reduxjs/toolkit `1.9.5`
- nookies `2.5.2`
- chart.js `4.3.0`
- mui/material `5.13.0`
- gtga.js `0.0.12`


**[ DB ]**
- MySQL `8.0.30`

**[ DevOps ]**
- Docker
- Nginx
- Jenkins
- AWS EC2

**[ Storage ]**
- S3 Bucket

**[ IDE ]**
- IntelliJ
- VSCode

**[ Team Collaboration Tool ]
-** GitLab
- Notion
- JIRA
- MatterMost




💥 아키텍처 💥

image





💾 ERD 💾

소스 (1)





📜 API 명세서 📜

image





📁 디렉토리 구조 📁

Frontend

└─src
    ├─components
    │  ├─community
    │  │  └─search
    │  ├─comparison
    │  ├─detail
    │  ├─home
    │  └─landing
    ├─hooks
    ├─lib
    ├─models
    ├─pages
    │  ├─community
    │  │  ├─corpboard
    │  │  │  ├─detail
    │  │  │  └─recommend
    │  │  └─freeboard
    │  │      ├─detail
    │  │      └─recommend
    │  ├─comparison
    │  │  └─[corpA]
    │  ├─detail
    │  └─search
    ├─stores
    │  ├─comparison
    │  └─info
    ├─styles
    └─utils
        ├─commnuity
        └─user

Backend

└─src
    ├─main
    │  ├─java
    │  │  └─com
    │  │      └─jobtang
    │  │          └─sourcecompany
    │  │              ├─api
    │  │              │  ├─analysis_result
    │  │              │  │  ├─Dto
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─comment
    │  │              │  │  ├─controller
    │  │              │  │  ├─dto
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─community
    │  │              │  │  ├─controller
    │  │              │  │  ├─dto
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─community_image
    │  │              │  │  ├─controller
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─corp
    │  │              │  │  ├─controller
    │  │              │  │  ├─dto
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─corp_detail
    │  │              │  │  ├─controller
    │  │              │  │  ├─document
    │  │              │  │  ├─dto
    │  │              │  │  │  ├─analysis_etc
    │  │              │  │  │  └─comparison
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  ├─service
    │  │              │  │  └─util
    │  │              │  │      ├─Analysis
    │  │              │  │      │  ├─analysis100
    │  │              │  │      │  ├─Analysis300
    │  │              │  │      │  ├─analysis400
    │  │              │  │      │  └─analysis_etc
    │  │              │  │      └─variable
    │  │              │  ├─exception
    │  │              │  │  ├─customerror
    │  │              │  │  └─mattermost
    │  │              │  ├─faq
    │  │              │  │  └─entity
    │  │              │  ├─induty_detail
    │  │              │  │  ├─entity
    │  │              │  │  └─repository
    │  │              │  ├─inquiry
    │  │              │  │  ├─controller
    │  │              │  │  ├─dto
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─inquiry_comment
    │  │              │  │  ├─controller
    │  │              │  │  ├─dto
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─likes
    │  │              │  │  ├─controller
    │  │              │  │  ├─entity
    │  │              │  │  ├─repository
    │  │              │  │  └─service
    │  │              │  ├─scrap
    │  │              │  │  └─entity
    │  │              │  └─user
    │  │              │      ├─controller
    │  │              │      ├─dto
    │  │              │      ├─entity
    │  │              │      ├─repository
    │  │              │      └─service
    │  │              ├─config
    │  │              └─util
    │  └─resources
    └─test