You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
11
+
Path2Finding is a pathfinding algorithm visualizer that focuses on teaching the user how pathfinding algorithm work. It allows the user to modify the maze, change the algorithm, and see how each of them perform. We also offer quick information about each algorithm to try and give a deeper understanding of the logic behind them.
12
+
13
+
## Features
14
+
15
+
- Start/stop the visualization
16
+
- Select an algorithm (BFS, DFS, A\*, Dijkstra's)
17
+
- Set a visualization speed (x0.5, x1, x1.5, x2)
18
+
- Change the grid size (minimum 20 x 20)
19
+
- Move start and end points
20
+
- Randomize wall placement
21
+
- Place/remove walls
22
+
- Clear the grid
23
+
- Save and load a maze
24
+
- View information about each algorithm
25
+
26
+
## Getting Started
27
+
28
+
### Setup
29
+
30
+
1. Install [Node.js](https://nodejs.org/en/) and [Yarn](https://classic.yarnpkg.com/en/docs/install)
31
+
32
+
2. Clone this repository to your local computer and install its dependencies
1. From the root project directory, start the application
43
+
44
+
```bash
45
+
> yarn start
46
+
```
47
+
48
+
2. A browser window should open once started but if not you can access it here: [http://localhost:3000/](http://localhost:3000/)
49
+
50
+
## Demo Video
51
+
52
+
https://youtu.be/6Yoa2gQcspA
8
53
9
54
## Available Scripts
10
55
@@ -38,21 +83,15 @@ Your app is ready to be deployed!
38
83
39
84
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
40
85
41
-
### `yarn eject`
42
-
43
-
**Note: this is a one-way operation. Once you `eject`, you can’t go back!**
44
-
45
-
If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
86
+
## Running with Docker
46
87
47
-
Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
88
+
### `docker build -t path2finding-visualizer .`
48
89
49
-
You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
90
+
Builds the React UI in production production and assembles a docker image to host the build using Nginx.
50
91
51
-
##Learn More
92
+
### `docker run -p 80:80 -d path2finding-visualizer`
52
93
53
-
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
54
-
55
-
To learn React, check out the [React documentation](https://reactjs.org/).
94
+
Runs the Nginx server hosting the React UI on port 80. Access the running server at http://localhost
56
95
57
96
## Contributors ✨
58
97
@@ -72,6 +111,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
72
111
73
112
<!-- markdownlint-enable -->
74
113
<!-- prettier-ignore-end -->
114
+
75
115
<!-- ALL-CONTRIBUTORS-LIST:END -->
76
116
77
117
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
0 commit comments