amazeing 0.8.1

Amazeing is a maze generator/solver application with simulation/visualization.
# amazeing

Amazeing is a maze generator/solver application with simulation/visualization.

![title_animation_1.gif](assets/image/title_animation_1.gif)
![title_animation_2.gif](assets/image/title_animation_2.gif)
![title_animation_3.gif](assets/image/title_animation_3.gif)

## Installation

Clone the repository and build the project:

```sh
git clone https://github.com/eendroroy/amazeing.git
cd amazeing
make install # this will install shell-completions
amzeing --help
```

### Key/Mouse events

- `Control`+`I` - Save current screen as png in current directory
- Create
    - `G`/`<Space>` - (Re)Generate Maze
    - Additional action in simulation mode (`--verbose`/`-v`):
        - `LeftClick` - Add/Remove Source
        - `Shift`+`LeftClick` - Set Destination
        - `G`/`<Space>` - Start Simulation
        - `<Space>` - Start/Pause/Resume Simulation
        - `R` - Restart simulation and reset selection

- View - Update mode (`--update`/`-u`):
    - `LeftClick` - Open path
    - `Shift`+`LeftClick` - Block Path
    - `Control`+`S` - Save current maze to the same file

- Solve
    - `LeftClick` - Select Source
    - `Shift`+`LeftClick` - Select Destination
    - Additional action in simulation mode (`--verbose`/`-v`):
        - `S`/`<Space>` - Start Simulation
        - `<Space>` - Start/Pause/Resume Simulation
        - `R` - Restart simulation and reset selection

## Generate Maze

| Algorithm          | Maze Shape | Unit Shape |                                                                                                  |
|--------------------|------------|------------|--------------------------------------------------------------------------------------------------|
| Dfs                | Rectangle  | Hexagon    | [![]https://img.youtube.com/vi/twafvSeVQOs/0.jpg]https://www.youtube.com/watch?v=twafvSeVQOs |
| Dfs (Multi Source) | Rectangle  | Square     | [![]https://img.youtube.com/vi/fL93bHyf6-M/0.jpg]https://www.youtube.com/watch?v=fL93bHyf6-M |
| Dfs                | Rectangle  | Square     | [![]https://img.youtube.com/vi/iyxUARc2T2g/0.jpg]https://www.youtube.com/watch?v=iyxUARc2T2g |
| Bfs                | Rectangle  | Square     | [![]https://img.youtube.com/vi/st8RLTgAuuE/0.jpg]https://www.youtube.com/watch?v=st8RLTgAuuE |
| Dfs                | Triangle   | Hexagon    | [![]https://img.youtube.com/vi/0c4s49G1RAk/0.jpg]https://www.youtube.com/watch?v=0c4s49G1RAk |
| A* (Manhattan)     | Circle     | Hexagon    | [![]https://img.youtube.com/vi/CZanPMEyYZE/0.jpg]https://www.youtube.com/shorts/CZanPMEyYZE  |

## Solve Maze

| Algorithm      | Maze Shape | Unit Shape |                                                                                                  |
|----------------|------------|------------|--------------------------------------------------------------------------------------------------|
| A* (Octile)    | Rectangle  | Hexagon    | [![]https://img.youtube.com/vi/MRt7X6JGDuo/0.jpg]https://www.youtube.com/watch?v=MRt7X6JGDuo |
| A* (Manhattan) | Rectangle  | Square     | [![]https://img.youtube.com/vi/LkxyikxTX6Y/0.jpg]https://www.youtube.com/watch?v=LkxyikxTX6Y |
| DFS            | Rectangle  | Square     | [![]https://img.youtube.com/vi/9F8XRL7lnIU/0.jpg]https://www.youtube.com/shorts/9F8XRL7lnIU  |
| BFS            | Rectangle  | Square     | [![]https://img.youtube.com/vi/h8q5vi68fz0/0.jpg]https://www.youtube.com/shorts/h8q5vi68fz0  |

## Others

[Color scheme generator](assets/scheme-generator.html)

## License

This project is licensed under the [GNU AGPL-3.0 License](https://www.gnu.org/licenses/agpl-3.0.html).
See the [LICENSE](./LICENSE) file for more details.