Skip to content

Commit

Permalink
Add home page
Browse files Browse the repository at this point in the history
  • Loading branch information
spaaaacccee committed Apr 14, 2024
1 parent da58a4a commit d4f1366
Show file tree
Hide file tree
Showing 21 changed files with 1,633 additions and 91 deletions.
20 changes: 10 additions & 10 deletions docs/1-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,51 +4,51 @@ sidebar_position: 1

# Overview

**Visualiser** is a visualiser and debugger for spatially-embedded algorithms, especially pathfinding search.
**Posthoc** is a visualiser and debugger for spatially-embedded algorithms, especially pathfinding search.

![Alt text](image.png)
![Alt text](image-1.png)

Understanding how algorithms work can be hard. Luckily, pathfinding problems are often occur in have a spatial environment — navigating through roads, corridors, terrain etc. So, it's natural to reason about them visually. For these problems, rather than staring at `cout`/`print` logs or stepping through the code, it would make more sense to see them run in the context their respective environments.

What's more, Visualiser isn't just for pathfinding search. Visualiser is designed to visualise any sort of decision-making over a 2D or 3D space.
What's more, Posthoc isn't just for pathfinding search. Posthoc is designed to visualise any sort of decision-making over a 2D or 3D space.

## What Can I Use Visualiser For?
## What Can I Use Posthoc For?

### Educational

The Visualiser could be use as an learning tool in for learners' understanding of complex algorithms by providing a conducive environment for visualization. Consider the example of the weighted [A\* search](https://en.wikipedia.org/wiki/A*_search_algorithm) problem. Students often find it challenging to conceptualize how various weights assigned to different grid cells or walkable paths can influence the algorithm's decision-making process. The Visualiser bridges this gap, enabling learners to visually comprehend the impact of these weights on the algorithm's pathfinding capabilities.
The Posthoc could be use as an learning tool in for learners' understanding of complex algorithms by providing a conducive environment for visualization. Consider the example of the weighted [A\* search](https://en.wikipedia.org/wiki/A*_search_algorithm) problem. Students often find it challenging to conceptualize how various weights assigned to different grid cells or walkable paths can influence the algorithm's decision-making process. The Posthoc bridges this gap, enabling learners to visually comprehend the impact of these weights on the algorithm's pathfinding capabilities.

![weighted a star](educational.png)

In the illustration provided, the map is designed to mimic a video game environment, depicting a desert interspersed with patches of forest. The intensity of the green color indicates the weight of the walkable paths, with darker shades representing heavier weights. Through this visualization, it becomes evident how the A\* algorithm strategically selects a path from the source to the target. It does so by navigating through areas with the least amount of green, effectively avoiding paths with heavier weights to find the shortest and most efficient route. This visual demonstration not only clarifies the concept of weighted pathfinding but also showcases the algorithm's adeptness at incorporating path weights into its calculations, leading to an optimized solution.

### Algorithm Comparison

The Visualiser is able to visualise more than one trace at a time which enables users to be able to compare algorithms side by side which eases the users to see the difference between 2 or more algorithms or solutions.
The Posthoc is able to visualise more than one trace at a time which enables users to be able to compare algorithms side by side which eases the users to see the difference between 2 or more algorithms or solutions.

![comparison between JPS and JPS2+](comparison.png)

In the illustration provided, we are able to see that Jump Point Search or JPS (left) for short is expands on more nodes compared to a newer version of it, JPS2+ (right).

### Debugging Pathfinding Issues

The Visualiser is able to set breakpoints and even allows users to code one within the visualiser! This simplifies identifying and solving problems in algorithm logic or execution. By visually representing each step an algorithm takes, learners can quickly pinpoint where things go wrong or see how an algorithm progresses.
The Posthoc is able to set breakpoints and even allows users to code one within the visualiser! This simplifies identifying and solving problems in algorithm logic or execution. By visually representing each step an algorithm takes, learners can quickly pinpoint where things go wrong or see how an algorithm progresses.

![A* debugging](debugging.png)

In the illustration provided, using the built-in debugger, users are able to set breakpoints on certain conditions, there is even an advance option where it could be useful when the provided breakpoints scenarios does not cover the needs of our users.

### Visualising Decisions

The Visualiser has a built-in functionality which converts a trace into a decision tree!
The Posthoc has a built-in functionality which converts a trace into a decision tree!

![decision tree and nine tile](decision.png)

In the illustration provided, using the Tree panel, the visualiser is able to visualise the decisions made by the algorithm.

Creating visualisations are the best way to get your point across.

## What's So Cool About Visualiser?
## What's So Cool About Posthoc?

### Declarative

Expand All @@ -62,7 +62,7 @@ Rather than writing your own visualiser, declaratively visualise your pathfindin

[TODO]

## When Shouldn't I Use Visualiser?
## When Shouldn't I Use Posthoc?

### Not a Replacement for a Traditional Debugger

Expand Down
4 changes: 2 additions & 2 deletions docs/2-get-visualiser.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
sidebar_position: 2
---

# Get Visualiser
# Get Posthoc

Open the visualiser [here](https://path-visualiser.github.io/app/).

## Install Visualiser as a Progressive Web App
## Install Posthoc as a Progressive Web App

You can install the visualiser as a progressive web app, so that it runs in its own window.

Expand Down
4 changes: 2 additions & 2 deletions docs/3-getting started/concepts/protocol.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Pathfinding Visualiser Protocol
# Pathfinding Posthoc Protocol

_Version 1.0.3_

The Pathfinding Visualiser Protocol describes the way pathfinding visualisers communicate with pathfinding solvers to deliver an interactive experience.
The Pathfinding Posthoc Protocol describes the way pathfinding visualisers communicate with pathfinding solvers to deliver an interactive experience.

The protocol is transport-layer agnostic, and extends the [JSON-RPC 2.0 specifications](https://www.jsonrpc.org/specification).

Expand Down
2 changes: 1 addition & 1 deletion docs/4-user-guide/_category_.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"label": "User Guide",
"position": 4,
"collapsed": false,
"collapsed": true,
"link": {
"type": "generated-index"
}
Expand Down
4 changes: 2 additions & 2 deletions docs/4-user-guide/interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ sidebar_position: 2

# User Interface

Visualiser's interface is made of composable panels. You can add, remove, and rearrange the UI to your desire. This allows Visualiser to support a range of tasks, whether you're using it to learn, showcase, or debug algorithms.
Posthoc's interface is made of composable panels. You can add, remove, and rearrange the UI to your desire. This allows Posthoc to support a range of tasks, whether you're using it to learn, showcase, or debug algorithms.

![Alt text](interface.png)

![Alt text](interface-labeled.png)

## Core Panels

When you first open Visualiser, it displays the following panels:
When you first open Posthoc, it displays the following panels:

### Recipes

Expand Down
2 changes: 1 addition & 1 deletion docs/4-user-guide/steps.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 5

# Steps Panel

Visualiser's steps panel shows a list of steps of the current chosen trace.
Posthoc's steps panel shows a list of steps of the current chosen trace.
![Alt text](steps.png)

## Navigating Through the Steps
Expand Down
2 changes: 1 addition & 1 deletion docs/6-api/_category_.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"label": "API Reference",
"position": 6,
"collapsed": false,
"collapsed": true,
"link": {
"type": "generated-index"
}
Expand Down
2 changes: 1 addition & 1 deletion docs/6-api/visualiser-adapter-protocol.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# Visualiser Adapter Protocol
# Posthoc Adapter Protocol
2 changes: 1 addition & 1 deletion docs/7-contributing/_category_.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"label": "Contributing",
"position": 7,
"collapsed": false,
"collapsed": true,
"link": {
"type": "generated-index"
}
Expand Down
Binary file added docs/image-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 10 additions & 9 deletions docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type { Config } from "@docusaurus/types";
import type * as Preset from "@docusaurus/preset-classic";

const config: Config = {
title: "Visualiser",
title: "Posthoc",
tagline: "Visualiser and Debugger for Pathfinding Search",
favicon: "img/favicon.ico",
titleDelimiter: "-",
Expand Down Expand Up @@ -38,13 +38,15 @@ const config: Config = {
sidebarPath: "./sidebars.ts",
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl: "https://github.com/path-visualiser/docs/tree/master",
editUrl:
"https://github.com/path-visualiser/path-visualiser.github.io/tree/master",
},
blog: {
showReadingTime: true,
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl: "https://github.com/path-visualiser/docs/tree/master",
editUrl:
"https://github.com/path-visualiser/path-visualiser.github.io/tree/master",
},
// blog: {
// showReadingTime: true,
Expand All @@ -63,10 +65,9 @@ const config: Config = {
// Replace with your project's social card
image: "img/social-card.jpg",
navbar: {
hideOnScroll: true,
title: "Visualiser",
title: "Posthoc",
logo: {
alt: "Visualiser Logo",
alt: "Posthoc Logo",
src: "img/logo512.png",
},
items: [
Expand All @@ -79,13 +80,13 @@ const config: Config = {
{ to: "/blog", label: "Blog", position: "left" },
{
href: "https://path-visualiser.github.io/app",
label: "App",
label: "Open Posthoc",
position: "right",
},
{
href: "https://github.com/path-visualiser/app",
label: "GitHub",
position: "right",
position: "left",
},
{
type: "search",
Expand All @@ -94,7 +95,7 @@ const config: Config = {
],
},
footer: {
copyright: "2023 Monash University",
copyright: "Copyright © 2024 Monash University",
},
prism: {
theme: prismThemes.github,
Expand Down
Loading

0 comments on commit d4f1366

Please sign in to comment.