This project provides an interactive grid-based interface for users to select start and end points, as well as obstacles, and then find a calculated path between the selected points. The backend path planning algorithm is implemented in Java and is connected to the frontend interface using endpoints.
-
Grid Creation: Create a grid with a constant width in both the x and y axes.
-
User Interaction: Interact with the grid by selecting cells and clicking buttons to designate start, end, and obstacle cells.
-
Path Planning Algorithm: Utilize a Java-based path planning algorithm to find the optimal path between the selected start and end points while considering obstacles.
-
Communication via Endpoints: Establish communication between the Java backend and the frontend JavaScript code through defined endpoints.
-
Visualization: Visualize the calculated path obtained from the Java service on the grid interface.
To get started with the project, follow these steps:
-
Clone the repository to your local machine.
-
Set up the backend Java service by running the provided setup script. (TODO)
-
Run the frontend JavaScript code in your preferred web browser with
run.sh
script. -
Interact with the grid interface to select start and end points, as well as obstacles.
-
Click the "Find Path" button to trigger the Java path planning algorithm and visualize the calculated path on the grid.
sudo apt install mongodb-clients
mongod --dbpath ./db --port 27017
mongo
use admin db.createUser({ user:"admin", pwd:"abc123", roles:[{role:"userAdminAnyDatabase",db:"admin"}], passwordDigestor:"server" })
use paths db.createUser({ user: "myuser", pwd: "mypass", roles: ["readWrite", "dbAdmin"] })
Contributions are welcome!