Skip to content

Yewspine/Algo-Visualizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Algo Visualizer

Table of Contents


About

Algo Visualizer is an educational tool designed to help students or curious understand how does algorithms work. It provides step-by-step visualizations of algorithm executions, allowing users to observe how data evolves over time.

The application will also includes supplementary information such as:

  • Time and space complexity
  • Algorithm origin and history
  • Implementations in different programming languages
  • A concise summary of how the algorithm operates

Code Documentation is available here: https://yewspine.github.io/Algo-Visualizer/com.visualizer/module-summary.html


Features

Coming soon.


Build Instructions

Dependencies

Dependency Version
Maven 3.8.7
JDK 22
JavaFX 24
Reflection 0.10.2

Steps to Build

  1. Run tests (optional but recommended):
  mvn clean test
  1. Build the application with JavaFX support:
  mvn clean javafx:jlink
  1. Copy the build artifacts:
  cp -r target/visualizer /path/to/your/binaries
  1. Run the application:

Execute the file located at: visualizer/bin/visualizer


Contributing

Contributions are welcome!

To get started:

  1. Clone the repository:
  git clone https://github.com/Yewspine/Algo-Visualizer.git
  1. Create a new branch:
  git checkout -b <feature-name>
  1. Follow the Conventional Commits specification for your commit messages.

  2. Push your branch and open a pull request:

  git push origin <feature-name>

Adding an Algorithm

To implement a new algorithm:

  1. Create a dedicated branch.
  2. Use a straightforward and educational implementation, one liners are prohibited.
  3. Ensure the code closely follows the standard pseudocode logic.
  4. Place the Java source code into the relevant category (e.g., Pathfinding, Sort, Search, etc.).
  5. Add a script version of the algorithm in the resources/script directory, using the naming format: <AlgorithmName>/<language-extension>.txt Example: BubbleSort/py.txt

Reporting Issues

If you find a bug or issue, please submit it via the GitHub Issues page. Bugs will be reviewed as soon as possible.


Notes

Have a better name idea for this application? “Visualizer” is just a placeholder, so feel free to open an issue if you have something better.

About

An educational software that shows algorithm effect in a visual way

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Languages