Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cjstehno/mazes
Code from "Mazes for Programmers" book ported to Groovy
https://github.com/cjstehno/mazes
Last synced: about 5 hours ago
JSON representation
Code from "Mazes for Programmers" book ported to Groovy
- Host: GitHub
- URL: https://github.com/cjstehno/mazes
- Owner: cjstehno
- Created: 2015-07-01T23:03:10.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-07-19T14:13:19.000Z (over 9 years ago)
- Last Synced: 2023-03-11T10:41:34.548Z (over 1 year ago)
- Language: Groovy
- Homepage:
- Size: 512 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Mazes for Programmers (Groovy port)
I am reading the book "[Mazes for Programmers](https://pragprog.com/book/jbmaze/mazes-for-programmers)" by Jamis Buck, which has its example code
written in Ruby. While Ruby is a great language, Groovy is my language of choice; so, as part of reading the book, I am loosely porting the code
from the book to Groovy.Note: this is not intended to be an official port of the code from the book. I am making my own changes as I see fit. If you are reading the book and
want the Groovy version of the code, you can at least have this as a general reference.> Note: the current code is a very trimmed-down and refactored version of the ported Ruby code. If you want a more complete porting, closer to the
original Ruby code, see the "[book](https://github.com/cjstehno/mazes/releases/tag/book)" tag.## Maze Server
As an extra twist on this project, I am going to refactor it into a Spring Boot project providing a sub-set of the mazes as an online maze generator.
### Supports
* Quadrilateral mazes only
* Allow download of the generated image
* Selection of row/column count (within bounds)
* Algorithm selection
* binaryTree
* sidewinder
* aldousBroder
* wilsons
* huntAndKill
* recursiveBacktracker
* kruskals
* simplifiedPrims
* truePrims
* recursiveDivision
* with(out) rooms
* The insets will be hard-coded per algorithm to give the best views
* Braiding on mazes that will allow it
* Flooding to show paths
* Shortest/longest path visualization* No wave or masking support - that seems a bit more cumbersome for this little fun project.
![Screenshot](screenshot.png)
## Building
> TBD...
## Running
> TBD...
## Deploying (Heroku)
> TBD...