Skip to content

This Full-Stack Application (React and Springboot) was developed with the purpose of allowing a user to choose, run and compare the results of any 2 of our algorithms from our list of completed Tree Compression Algorithms that we have explored and implemented, comparing factors such as time taken and compressed image size and quality.

Notifications You must be signed in to change notification settings

TeoSean00/Tree_Compression_Algorithm_Backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tree_Compression_Algorithm_Backend

This Full-Stack Application (React and Springboot) was developed with the purpose of allowing a user to choose and run any 2 algorithms from our list of completed algorithms that we have explored and implemented. The 2 selected algorithms will then be run concurrently on the backend via multi-threading to reduce the waiting time, with their calculated results then being displayed for every image side-by-side on the frontend for easy visualization and comparison purposes. The results compare many metrics for every image such as its compression size and time taken which are all crucial in determining how good a particular Tree Compression Algorithm is.

We have a total of 6 completed algorithms to choose from, with our most optimized one being 'Colour Quant and Huffman Algorithm - Quant 256'. Feel free to run it against any of the other algorithms, with the 'Original Bad Algorithm' option being the worst algorithm. More explanation of our approach, experimentation and other algorithms is covered in our YouTube link below!

Youtube In-Depth Explanation & Demo Video

Youtube Link

Short Demonstration

Loom Link

Frontend Repository (Required)

Frontend Repository

Technology Stack

react javascript tailwind css html5 MUI java spring

Getting Started

  1. Install a Java Development Kit (JDK)
  2. Clone a copy of this repository along with the frontend repository.
3. run 'run.bat' in the backend root directory terminal to start the backend SpringBoot application.
4. SpringBoot will be running on http://localhost:8080.
5. run 'npm install' in the frontend root directory terminal to install the necessary dependencies.
6. run 'npm run dev' in the frontend root directory terminal to start the frontend React application.
7. React will be running on http://127.0.0.1:5173.

About

This Full-Stack Application (React and Springboot) was developed with the purpose of allowing a user to choose, run and compare the results of any 2 of our algorithms from our list of completed Tree Compression Algorithms that we have explored and implemented, comparing factors such as time taken and compressed image size and quality.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages