Skip to content

πŸ‘€ Guess me! (friend & family) is a person information storage/writing quiz app for preventing memory loss and family memory of the elderly.

Notifications You must be signed in to change notification settings

GUESS-ME-GDSC/Server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Guess me! (friend & family)


Guess me Logo

Demo Video

GitHub language count GitHub language count GitHub language count

πŸ‘‹ Project Overview

Guess me! (friend & family) is a person information storage/writing quiz app for preventing memory loss and family memory of the elderly.

Goal 3. Good Health and Well-Being

THE 17 GOALS | Sustainable Development

Our solution focuses on the United Nations' Sustainable Development goal of Good Health & Wellbeing. Ensure healthy lives and promote well-being for all at all ages specifically targeting the elderly population.


How can we prevent an increase in the incidence of dementia in the elderly population and help them maintain memories of their loved ones? Dementia is a progressive disease that affects millions of people worldwide and can be fatal not only to individuals but also to family and friends. As the world's population ages, the proportion of people with dementia is increasing, and this trend poses a significant challenge to individuals, families and communities around the world.

Our project aims to develop ways to reduce the risk of dementia and promote healthy aging in the elderly population. The memory loss of a loved one due to dementia is a major problem that we are trying to solve. Handwriting and quiz-type repetitive learning have been shown to be effective in promoting brain activity, strengthening memory, and improving cognitive ability in the elderly. By encouraging these activities, we hope to reduce the risk of dementia and help individuals maintain memories of their loved ones.

Ultimately, Guess me! (friend & family) aims to contribute to global efforts to improve the lives of individuals, families and communities around the world by preventing dementia and promoting healthy aging in the elderly. We hope to reduce the burden of dementia on individuals, families, and society as a whole by focusing on early prevention and intervention.

Furthermore, when entering information from close people while using the service, we want to create time to know what we like, what we like, and how we like clothes, and to make more valuable time to communicate through the process of taking pictures and recording voices.

πŸ“– Table of Contents

  1. Features
  2. Stacks
  3. Expectation
  4. Competitiveness
  5. Getting Started
  6. Source Code Structure
  7. TEAM INFO

✨ Key Features

There is Two key features exist.

  • Register Person Information
  • Quiz about registered people

✨ Expectations

πŸ‘ Memory Enhancement

  • You can promote brain activity by taking quizzes.
  • It helps prevent dementia by submitting answers through writing.

🀝 Enabling Family Communication

  • If you use the service, you will have time to communicate with your family.
  • You can get to know each other more by entering your family's information.

πŸ› οΈ Tech Stacks

Guessme_project_architecture

πŸš‰ Platform

🦾 Server

πŸ˜„ ML(Image Compare Server)

😎 Android

  • Architecture
    • MVVM
  • Android Jetpack
    • ViewModel
    • LiveData
    • View Binding
    • Navigation
  • Network
    • Retrofit2 / okHttp3
  • Asynchronous
    • Kotlin Coroutine
  • Database
    • DataStore
  • DI
    • Hilt

πŸƒ Getting Started

You don't need to install anything to run Guessme. It's all deployed on the cloud.

The only thing you need is a Android Client.

πŸ•ΉοΈ Source Code Structure

Server

Server/
β”œβ”€ .gitignore
β”œβ”€ .gitmessage.txt
β”œβ”€ Dockerfile
β”œβ”€ HELP.md
β”œβ”€ README.md
β”œβ”€ gradle
β”‚  └─ wrapper
β”‚     └─ gradle-wrapper.properties
β”œβ”€ gradlew
β”œβ”€ gradlew.bat
└─ src
   β”œβ”€ main
   β”‚  β”œβ”€ java
   β”‚  β”‚  └─ gdsc
   β”‚  β”‚     └─ mju
   β”‚  β”‚        └─ guessme
   β”‚  β”‚           β”œβ”€ GuessmeApplication.java
   β”‚  β”‚           β”œβ”€ domain
   β”‚  β”‚           β”‚  β”œβ”€ auth
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ AuthController.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ AuthService.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ UserDetailsServiceImpl.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ dto
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ AuthReqDto.java
   β”‚  β”‚           β”‚  β”‚  └─ jwt
   β”‚  β”‚           β”‚  β”‚     β”œβ”€ JwtTokenFilter.java
   β”‚  β”‚           β”‚  β”‚     └─ JwtTokenProvider.java
   β”‚  β”‚           β”‚  β”œβ”€ info
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ InfoController.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ InfoService.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ dto
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ DeleteInfoByIdListReqDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ InfoObj.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ entity
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ Info.java
   β”‚  β”‚           β”‚  β”‚  └─ repository
   β”‚  β”‚           β”‚  β”‚     └─ InfoRepository.java
   β”‚  β”‚           β”‚  β”œβ”€ person
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ PersonController.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ PersonService.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ dto
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ AddInfoReqDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ CreatePersonReqDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ PersonDetailResDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ PersonResDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ UpdatePersonDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ UpdatePersonReqDto.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ entity
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ Person.java
   β”‚  β”‚           β”‚  β”‚  └─ repository
   β”‚  β”‚           β”‚  β”‚     └─ PersonRepository.java
   β”‚  β”‚           β”‚  β”œβ”€ quiz
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ QuizController.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ QuizService.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ dto
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ CompareImageResDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ NewScoreDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ QuizDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  β”œβ”€ QuizResDto.java
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ ScoreReqDto.java
   β”‚  β”‚           β”‚  β”‚  β”œβ”€ entity
   β”‚  β”‚           β”‚  β”‚  β”‚  └─ Scoring.java
   β”‚  β”‚           β”‚  β”‚  └─ repository
   β”‚  β”‚           β”‚  β”‚     └─ ScoringRepository.java
   β”‚  β”‚           β”‚  └─ user
   β”‚  β”‚           β”‚     β”œβ”€ UserController.java
   β”‚  β”‚           β”‚     β”œβ”€ UserService.java
   β”‚  β”‚           β”‚     β”œβ”€ dto
   β”‚  β”‚           β”‚     β”‚  β”œβ”€ BlahBlahReqDto.java
   β”‚  β”‚           β”‚     β”‚  └─ BlahResDto.java
   β”‚  β”‚           β”‚     β”œβ”€ entity
   β”‚  β”‚           β”‚     β”‚  └─ User.java
   β”‚  β”‚           β”‚     └─ repository
   β”‚  β”‚           β”‚        └─ UserRepository.java
   β”‚  β”‚           └─ global
   β”‚  β”‚              β”œβ”€ config
   β”‚  β”‚              β”‚  β”œβ”€ JwtSecurityConfig.java
   β”‚  β”‚              β”‚  └─ SecurityConfig.java
   β”‚  β”‚              β”œβ”€ infra
   β”‚  β”‚              β”‚  β”œβ”€ gcs
   β”‚  β”‚              β”‚  β”‚  β”œβ”€ GCSConfig.java
   β”‚  β”‚              β”‚  β”‚  └─ GcsService.java
   β”‚  β”‚              β”‚  └─ openai
   β”‚  β”‚              β”‚     β”œβ”€ OpenAIRestTemplateConfig.java
   β”‚  β”‚              β”‚     β”œβ”€ OpenAIService.java
   β”‚  β”‚              β”‚     β”œβ”€ OpenAIServiceImpl.java
   β”‚  β”‚              β”‚     └─ dto
   β”‚  β”‚              β”‚        β”œβ”€ ChatRequest.java
   β”‚  β”‚              β”‚        β”œβ”€ ChatResponse.java
   β”‚  β”‚              β”‚        β”œβ”€ Choice.java
   β”‚  β”‚              β”‚        β”œβ”€ Message.java
   β”‚  β”‚              β”‚        └─ Usage.java
   β”‚  β”‚              └─ response
   β”‚  β”‚                 β”œβ”€ BaseException.java
   β”‚  β”‚                 β”œβ”€ BaseResponse.java
   β”‚  β”‚                 β”œβ”€ ExceptionController.java
   β”‚  β”‚                 └─ UserNotFoundException.java
   β”‚  └─ resources
   β”‚     β”œβ”€ application.properties
   β”‚     └─ templates
   β”‚        β”œβ”€ mail.html
   β”‚        └─ mailForHandwritingDissimilarity.html
   └─ test
      └─ java
         └─ gdsc
            └─ mju
               └─ guessme
                  β”œβ”€ GuessmeApplicationTests.java
                  β”œβ”€ domain
                  β”‚  β”œβ”€ auth
                  β”‚  β”‚  └─ AuthServiceTest.java
                  β”‚  └─ quiz
                  β”‚     └─ QuizServiceTest.java
                  └─ global
                     └─ infra
                        └─ openai
                           └─ OpenAIServiceImplTest.java

πŸ‘¨β€πŸ‘¦β€πŸ‘¦ Team Info

Name HaeChan Kim JeongHo Kim Yuri Mun
Role Server Server Android
GitHub
Email

About

πŸ‘€ Guess me! (friend & family) is a person information storage/writing quiz app for preventing memory loss and family memory of the elderly.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published