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!
- Install a Java Development Kit (JDK)
- 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.