Giter Site home page Giter Site logo

-oss-_dobby's Introduction

Dobby


  • 구미 1반 D105 팀 (채승협, 박준홍, 신지현, 허창환, 황규진)

🤹 역할

  • FrontEnd
    • 박준홍 : 캘린더기능, leaflet 을 사용한 지도 구현, Google api 를 사용한 장소 검색 기능
    • 신지현 : 메인페이지, 회원가입, 차트, 그룹 검색, 그룹 조회, 그룹 생성 컴포넌트 개발
    • 황규진 : sidebar, 일정추가 컴포넌트 개발, ucc, 발표
  • BackEnd
    • 채승협 : REST api서버개발, CI/CD, FCM(Firebase Cloud Messaging) 개발, 라우팅 기능, 하이드리드 앱 제작
    • 허창환: REST API 서버 개발, Firebase 환경 설정 및 설계 (Firebase Cloud Messaging, Authentication)연동, OSRM 서버 환경 구축

Architecture

📖 기술 스택

  • 언어 : c++, javascript, html

  • Frontend : Vue, React-Native

  • Backend : Node.js, Express

  • 데이터베이스 : Firebase

  • 개발툴 : Visudal studio code

  • 클라우드 : AWS

  • 협업툴 : GIT, JIRA

  • DevOps : Jenkins, Docker, Nginx

  • Library : OSRM, OSM, leaflet, FullCalendar, FCM

📖 기술 버전

  • Nodejs : v10.19.0

  • Npm : 6.14.4

  • Express : 4.16.1

  • firebase SDK : 9.1.3

  • firebase-admin SDK : 10.0.0

  • element-plus : 0.0.11

  • vue : 3.0.0

  • React-Native : 0.14.3

  • Nginx : stable-alpine

💻 Installation with Local

  • 로컬에서 백엔드 실행 시 명령어

    # 프로젝트 디렉토리 진입
    cd backend/Dobby
    
    # 모듈 설치
    npm install
    # 프로젝트 실행
    npm start
  • 로컬에서 프론트엔드 실행 시 명령어

    # 프로젝트 디렉토리 진입
    cd frontend/Dobby
    
    # 모듈 설치
    yarn install
    
    # 프로젝트 실행
    yarn serve
  • Open Street Routing Machine (파일 용량 문제로 인해 없음)

    # 프로젝트 디렉토리 진입
    cd ./osrm
    
    ## 각각 Routing Machine을 돌려야 함.
    # osrm-test-driving : 자동차 경로
    cd osrm-test-driving/data
    # osrm-test-walking : 도보 경로
    cd osrm-test-walking/data
    
    # 각각 다른 포트번호로 Docker 명령어 실행
    docker run -t -i -p 5000:5000 -v "${PWD}:/data" osrm/osrm-backend osrm-routed --algorithm mld /data/berlin-latest.osrm

1. Architecture


KakaoTalk_20211118_145434725

2. Project Data Structure


📦S05P31D105
├── 📂backend					# Backend 코드
│   └── 📂Dobby
│       ├── 📂bin
│       ├── 📂firebase
│       ├── 📂public
│       │   ├── 📂images
│       │   ├── 📂javascripts
│       │   └── 📂stylesheets
│       ├── 📂routes
│       │   └── 📂controller
│       └── 📂views
├── 📂frontend					# Frontend 코드
│   └── 📂vue3
│       ├── 📂nginx
│       ├── 📂public
│       └── 📂src
│           ├── 📂assets
│           ├── 📂components
│           │   ├── 📂calendar
│           │   ├── 📂map
│           │   └── 📂teleport
│           ├── 📂router
│           ├── 📂store
│           └── 📂views
│               ├── 📂calendar
│               ├── 📂chart
│               ├── 📂group
│               ├── 📂groupCalendar
│               ├── 📂main
│               ├── 📂schedule
│               └── 📂sidebar
├── 📂jenkins
├── 📂exec								# 산출물
└── 📝Readme.md

3. Firestore Data Model


🗂️ users
├── 📝user
│	├── address : String
│	├── email : String
│	├── name : String
│	├── nickname : String
│	├── phone : String
│	├── uid : String
│	└──  🗂️ calendar
│			├── 📝 calendar
│					├── cid : String
│					├── title : String
│					├── content : String
│					├── startDate : String
│					├── endDate : String
│					├── startTime : String
│					├── endTime : String
│					├── completed : Boolean
│					├── placeName : String
│					├── placeLat : String
│					├── placeLng : String
│					├── color : String
│					├── category : String
│					├── allDay : Boolean
│					├── createdAt : String
│	└──  🗂️ tokens
│			├── 📝token
│					├── tid : String
│					├── token : String
🗂️ groups
├── 📝group
│	├── gid : String
│	├── name : String
│	├── password : String
│	├── description : String
│	├── private : Boolean
│	├── uid : String
│	├── createAt : String
│	└──  🗂️ groupcalendar
│			├── 📝 calendar
│					├── cid : String
│					├── title : String
│					├── content : String
│					├── startDate : String
│					├── endDate : String
│					├── startTime : String
│					├── endTime : String
│					├── completed : Boolean
│					├── placeName : String
│					├── placeLat : String
│					├── placeLng : String
│					├── color : String
│					├── category : String
│					├── allDay : Boolean
│					├── participant : Array
│						├── uid : String
│						├── name : String
│						├── nickname : String
│						├── completed : Boolean
│					├── createdAt : String
│	└──  🗂️ members
│			├── 📝member
│					├── uid : String
│					├── gid : String
│					├── email : String
│					├── nickname : String
│					├── name : String
│					├── admin : Boolean
│					├── writer : Boolean

4. MockUp


5. Rest ApI Document


6. 시연


  • 회원가입 및 로그인

    ![회원가입 및 로그인](./exec/img/회원가입 및 로그인.gif)

  • 개인 일정 보기 및 수정

    ![일정 보기 및 수정](./exec/img/일정 보기 및 수정.gif)

  • 그룹 일정 등록 및 수정

    일정_보기_등록_수정_삭제

  • 개인 및 그룹 일정 차트

![개인 및 그룹 차트](./exec/img/개인 및 그룹 차트.gif)

-oss-_dobby's People

Contributors

ckdghks34 avatar ji55 avatar oowtl avatar yiyaha avatar seunghyeopchae avatar qjin2021 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.