Git Product home page Git Product logo

coachingmate's Introduction

Project Name & Pitch

Coachmate

An application used to connect the Garmin connect and retrieve activity data, built with Springboot framework. This is a unimelb project of subject COMP90082 which is responsible for acquiring and processing data. Data collected in Garmin Connect is acquired through Garmin wearable. devices used by athletes training under CoachingMate.

Index

Project Status

This project is currently in development.

  1. Users can register an account and login to this system.
  2. User can authorised this account to garmin connect so that garmin connect can transfer activity data to this backend.

Components diagram

image

The project structure

The project adopts the development mode of sub-modules according to functions, and the structure is as follows

  • coachingmateanalytics.coachingmate.controller: Front controller layer

  • coachingmateanalytics.coachingmate.entity: Data entity class

  • coachingmateanalytics.coachingmate.dao : Data interface access layer

  • coachingmateanalytics.coachingmate.service : Data service interface layer

  • coachingmateanalytics.coachingmate.service.serviceImpl : Data service interface implementation layer

  • coachingmateanalytics.coachingmate.utils : Tool library

  • coachingmateanalytics.coachingmate.intercepter : used to set the response header for all request

  • resources/application.yml : Project profile resources/static/ : Static resource directory

Description of the database structure

Mongodb has one database (named coachingDB) which has three collections, which are respectively

Installation and Setup Instructions

1. install JDK

Official tutorial for JDK installation

2. install maven

Official tutorial for Maven installation
take mac os for example

  • download apache-maven-3.6.3-bin.tar.gz
  • tar xzvf apache-maven-3.6.3-bin.tar.gz
  • Alternatively use your preferred archive extraction tool.
  • Add the bin directory of the created directory apache-maven-3.6.3 to the PATH environment variable
  • Confirm with mvn -v in a new shell. The result should look similar to
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /opt/apache-maven-3.6.3
Java version: 1.8.0_45, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.8.5", arch: "x86_64", family: "mac"

3. install MongoDB

Official tutorial for mongoDB installation

brew install [email protected]

4. install git environment

  • linux install
yum install git
  • mac install
brew install git
  • Before you can use Git for version management, you need to configure Git by telling git your username and your email account
//configuration
[root@localhost ~]# git config --global user.name flymegoc
[root@localhost ~]# git config --global user.email [email protected]

//Check the configuration
[root@localhost ~]# git config --list
user.name=flymegoc
[email protected]

5. Run this project locally

Clone down this repository. You will need maven and JDK1.8 installed globally on your machine.

git clone https://github.com/chenyuguo/coachingmate

Modify configuration file application-dev.properties

spring.data.mongodb.uri = mongodb://{username}:{password}@{host}:{port}/{database name}

Installation:

cd coachingmate
mvn install

To Start Server:

java -jar ./target/coachingmate-0.0.1-SNAPSHOT.jar

To login App:

localhost:8080/login?username={username}&password={password}

Deployment guidelines

There are serveal steps we need to do to run our app on heroku

1. create a new application on heroku

image

2. text our app name and region

image

3. fork this repository to your own repository

4. Select Github and find this forked project in your own repository

image

5. connect successfully

image

6. find our app and click the Openapp button

image

7. find our URL in the build log

image

URL: https://coachingmate2020.herokuapp.com/

Documents

Release History

  • 1.0.0 -Complete the basic setup of front and rear ends (user registration, user login, garmin Connect authorization, and GARmin Connect simulation terminal data)
  • 1.0.1 - fix bug: when user name is right, password is not checked. and add log aspect.

coachingmate's People

Contributors

shuaimou avatar chenyuguo avatar admiraljuzuo avatar tilda-1997 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.