diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml new file mode 100644 index 0000000..8e7f21e --- /dev/null +++ b/.github/workflows/maven.yml @@ -0,0 +1,26 @@ +# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time +# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven + +name: Java CI with Maven + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Set up JDK 11 + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'temurin' + cache: maven + - name: Build with Maven + run: mvn -B package --file pom.xml diff --git a/AlgorithmVisualizer.jar b/AlgorithmVisualizer.jar deleted file mode 100644 index 75c0ef1..0000000 Binary files a/AlgorithmVisualizer.jar and /dev/null differ diff --git a/README.md b/README.md index 81453e6..a19aa74 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,15 @@ -# AlgorithmVisualizer +# algorithm-visualizer -A program for visualizing sorting algorithms. +An application for visualizing sorting algorithms. This is my freshman year summer project! Trying to get a better understanding of sorting algorithms before my Data Structures and Algorithms class this fall while applying new things i've learned such as Swing, Git, Maven, and multi-threading. +Despite this type of project being unoriginal, the code itself is original. + + + +[![AlgorithmVisualizer](https://github.com/dlarocque/AlgorithmVisualizer/blob/master/images/Startup.PNG)](https://www.youtube.com/watch?v=WDOpFcnzuaQ "AlgorithmVisualizer") + ## Installation ### Prerequisite @@ -14,28 +20,19 @@ This is my freshman year summer project! Trying to get a better understanding o ----------------------------------------------- -- Clone the project onto your system 'https://github.com/dlarocque/AlgorithmVisualizer' -- Download the .zip file from https://github.com/dlarocque/AlgorithmVisualizer and extract its contents - -*OR* - -- Download the AlgorithmVisualizer.jar executable JAR file +#### Clone -## Running - -*These instructions are directed towards Linux users* - -- Go to `C:/.../AlgorithmVisualizer-master` and enter +`git clone https://github.com/dlarocque/AlgorithmVisualizer` -`mvn clean install` +#### Download ZIP -To compile the program. +Download the .zip file from https://github.com/dlarocque/AlgorithmVisualizer and extract its contents -Once the program is built successfully, enter the following : +## Running -`mvn exec:java -Dexec.mainClass=com.example.algorithmvisualizer.Main` +*For Linux/macOS users* -Can also build and run simultaneously with : +From the root of the project, build and execute simultaneously: `mvn install exec:java -Dexec.mainClass=com.example.algorithmvisualizer.Main` @@ -43,8 +40,6 @@ Can also build and run simultaneously with : On startup, the application will open up a frame containing buttons and an unsorted array in bar form. There is a Reset button, a button for each sorting algorithm, a drop down size changer, an FPS slider, and a label showing statistics. -![Startup](https://github.com/dlarocque/AlgorithmVisualizer/blob/master/images/Startup.PNG) - _The Reset Button_ will re-shuffle the array and stop any sorting that is being done, while keeping the size set to the array. _The Sort Buttons_ will be available when sorting isn't being done. Clicking any of them will start sorting the displayed array with the selected sorting algorithm.