Skip to content
/ Amazeing Public

This project aims to visualize various algorithms to create or traverse mazes.

License

Notifications You must be signed in to change notification settings

Ijee/Amazeing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

stack stats

MIT license Version GitHub Repo stars

This project visualizes different algorithms adapted for creating mazes
and solving them with various path finding algorithms.

Tip

Check out the app at amazeing.app/.

Features

  • Implements 21+ algorithms for maze creation and traversal.
  • Extensive control over algorithm execution (autoplay, iteration history, etc.).
  • Paintable grid graph for custom maze creation.
  • Easy import/export feature.
  • Statistics tracking during algorithm execution.
  • "Learn More" page with general info and additional resources. (soon™)
  • Available as a Progressive Web App (PWA).

Screenshot

Amazeing Promo


Contributions / Support

Contributions are welcome! ❤️

If you like what you see and just want to show some appreciation, you can do so on ko-fi or just share this project with people you know.

There are quite a few TODOs throughout this project, but I haven't created specific issues for them yet. Some of these tasks might be a good start for a first pull request, while others might be based on old information or poorly written notes.

Either way please create an issue first to avoid unnecessary work and to check if the feature/bug in question is something that you can work on. PRs without any kind of discussion beforehand have a high chance of not being accepted. (Sorry)

When bugs related to the algorithms themselves are reported, they will always be prioritized over new features."

Note: The project is based on my other project which is quite boring in comparison to be honest. It was originally a Vue.js project that was then converted to Angular. Have a look here.


Development server

Run ng serve for development. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running tests

This project uses Playwright for e2e tests and ensures that the most common use-cases are covered and don't produce errors while executing the algorithms. More tests could be introduced but there is no way to automatically test for the correctness of the algorithms themselves.

Run locally: npm run test:pw


License:

This project is licensed under the MIT License.