Skip to content

"Workout Beats" is a music service that provides playlists of music suitable for use during exercise.

LouiIII3/Bit_Music_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bit-Music

언어 선택

English | 한국어



Logo

WEB APP



Project Introduction and Objectives

  • Diverse Music Selection: Provides various music genres and tempos tailored to users' diverse tastes and workout types.

  • Hands-free User Experience: Addresses the inconvenience of using hands to play desired songs during workouts.

  • Customized Music for Workouts: Offers the ability for users to adjust music to fit their workout environment.

  • Real-time Streaming: Enables users to stream music in real-time.



Overall Logic



UI Design

UI V1 UI V2 Description
Developed the website using Bootstrap. The navigation bar includes sections for Main, Create Account, Login, and Music.
The registration form includes fields for ID, email verification and sending, verification code, password, and nickname.
The login page includes fields for ID and password input, password reset, and registration options. (Facebook login option not yet implemented.)
Provides a window for listening to music (admin access only).
Displays the artist and details of the selected track. Users can easily listen to the track through the track bar and navigate using the next and previous buttons. Users can click the button to listen to the desired song. The logout button allows for safe logout, and users can manually enter and send their heart rate.
UI showing the user's exercise information by watching the user exercise video. The bottom of the page includes a section for generating a QR code.



Usage

  • Integrating Vue in Spring Boot:

    To neatly organize the Vue project, create a vue folder inside your Spring Boot project as follows:

    mkdir vue

    Running this command will create the vue folder. Now navigate to the created folder to configure the Vue project:

    cd vue

    To create the Vue project, run the following command:

    vue init webpack vue-front

    This will create the Vue project.


  • Installing the Tensorflow module:

    To install the Tensorflow module, use the following command:

    pip install tensorflow
    



Additional Features

1. Token Implementation

  • Token-based registration enhances authentication and security, facilitates stateless architecture, separates infrastructure components, improves user experience, and enables consistent authentication across applications.

2. Direct Login and Registration Implementation in V1 Version

  • Decided to implement the login and registration functions directly without relying on frameworks like Spring Security. This is to gain a deeper understanding of the basic concepts and working principles.
  • By directly exploring various security and authentication technologies, we aim to broaden our understanding of different technologies and advance our technical stack.

3. Deep Learning Environment Setup According to Model API (2024-02-11)

  • Set up a deep learning environment according to the Model API to enhance exercise data analysis and prediction capabilities. This allows users to receive more sophisticated and customized exercise plans.

4. Camera Heart Rate Measurement (2024-02-11)

  • Removed due to difficulty in obtaining accurate data when the face is not visible.

5. Email Verification Feature Added (2024-04-16)

  • Added a feature to verify the user's email address to enhance security. Email verification helps confirm the user's identity and protect access to the account.

6. Exercise Data Storage Feature Added (2024-05-02)

  • Added a feature to store users' exercise data, allowing them to record and track their workouts.

7. QR Code-based Exercise Data Transfer Feature Added (2024-05-13)

  • Added a feature to easily transfer exercise data between users using QR codes. This allows users to easily share and compare workout results.

8. HTTPS Usage (2024-05-19)

  • Enhanced security by using HTTPS (HTTP Secure) for data transmission. HTTPS encrypts the data being transmitted, preventing man-in-the-middle attacks and eavesdropping on the network.

9. Load Balancer Usage (2024-05-25)

  • Handled HTTPS traffic using Amazon Web Services (AWS) Load Balancer. The AWS Load Balancer manages SSL/TLS certificates and safely distributes traffic, improving both the availability and security of the application.

10. IPv6 Usage (2024-05-31)

  • Upgraded the network infrastructure to be future-oriented by adopting IPv6. (Reverted to IPv4 due to issues with SSH connectivity.)



Issues Encountered

  • Failed to directly retrieve data from the database.
  • Database modifications.
  • iOS app beta connection on April 2, 2024.
  • April 3-5, 2024
    Encountered malware attacks on the Spring Boot file and contacted AWS for resolution.
  • April 10, 2024
    Decision to use Spring Security in the Spring Boot project.
  • May 15, 2024
    Tensorflow module working correctly locally but having issues after server deployment.

About

"Workout Beats" is a music service that provides playlists of music suitable for use during exercise.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •