Overhaul vitepress site

master
Daniel Lovell 2024-10-02 01:36:42 -07:00
parent 494cb8591f
commit 4a79b77b41
12 changed files with 2336 additions and 17608 deletions

View File

@ -33,11 +33,9 @@ jobs:
- name: Install dependencies
run: npm ci
working-directory: './docs'
- name: Build documentation
run: npm run docs:build
working-directory: './docs'
- name: Deploy Documentation
uses: peaceiris/actions-gh-pages@v4

2
.gitignore vendored
View File

@ -81,3 +81,5 @@ crashlytics-build.properties
# Telemetry Logs
Telemetry/Logs/
node_modules/

2
docs/.gitignore vendored
View File

@ -1,3 +1,5 @@
node_modules/
package-lock.json
.vuepress/dist/
.vitepress/cache/
.vitepress/dist/

View File

@ -0,0 +1,33 @@
import { defineConfig } from 'vitepress'
// https://vitepress.dev/reference/site-config
export default defineConfig({
title: "micromissiles-unity",
description: "Swarm-on-swarm simulator using micromissiles for point defense",
themeConfig: {
// https://vitepress.dev/reference/default-theme-config
nav: [
{ text: 'Home', link: '/' },
{ text: 'Documentation', link: '/Keybinds_and_Controls' }
],
sidebar: [
{
text: 'Documentation',
items: [
{ text: 'Keybinds and Controls', link: '/Keybinds_and_Controls' },
{ text: 'Simulation Configuration Guide', link: '/Simulation_Config_Guide' },
{ text: 'Simulation Logging', link: '/Simulation_Logging' },
{ text: 'Coverage Reports', link: '/coverage/editmode/Report/' }
]
}
],
socialLinks: [
{ icon: 'github', link: 'https://github.com/PisterLab/micromissiles-unity' }
],
search: {
provider: 'local'
}
}
})

View File

@ -1,29 +0,0 @@
module.exports = async () => {
const {viteBundler} = await import('@vuepress/bundler-vite')
return {
title: 'Micromissiles Unity Project',
description: 'Documentation for the Micromissiles Unity project',
base: '/micromissiles-unity/', themeConfig: {
navbar:
[
{text: 'Home', link: '/'}, {
text: 'Keybinds and Controls',
link: '/Keybinds_and_Controls/'
},
{
text: 'Simulation Configuration Guide',
link: '/Simulation_Config_Guide/'
},
{text: 'Simulation Logging', link: '/Simulation_Logging/'},
{
text: 'Coverage Reports',
link: '/coverage/editmode/Report/'
}, // Link to coverage reports
],
sidebar: 'auto',
},
bundler: viteBundler(),
patterns: ['INDEX.md', '**/*.md', '**/*.vue'],
}
}

View File

@ -1,39 +1,41 @@
---
home: true
heroImage: /images/logo.png
heroText: Micromissiles Unity Project
tagline: Documentation for the Micromissiles Unity project
actionText: Get Started →
actionLink: /Keybinds_and_Controls.html
features:
- title: Swarm-on-swarm simulations
details: This project models swarm-on-swarm point defense scenarioswith multiple missile and drone models.
- title: Customizable Scenarios
details: Create and modify various engagement scenarios.
- title: Detailed Analysis
details: Comprehensive logging and data analysis tools.
# https://vitepress.dev/reference/default-theme-home-page
layout: home
hero:
name: "micromissiles-unity"
tagline: "Swarm-on-swarm simulator using micromissiles for point defense"
actions:
- theme: brand
text: Documentation
link: /Keybinds_and_Controls
#- theme: alt
# text: Simulation Configuration Guide
# link: /Simulation_Config_Guide
---
# Micromissiles Unity Project
![Sim Salvo Animation](/images/sim_salvo_animation.gif)
## Quick Start
# Quick Start
We generate pre-built standalone binaries for Windows and Mac users from the `release` branch. These binaries are intended for non-development users who just want to run the application and modify a few configurations along the way.
You can find the latest release [here](https://github.com/PisterLab/micromissiles-unity/releases/latest).
### Windows
## Windows
1. Download the zip file for Windows: `micromissiles-<version>-windows_x86_64.zip`.
2. Unzip the zip file. The zip file should contain a single directory called `micromissiles-<version>-windows_x86_64`.
3. In the `micromissiles-<version>-windows_x86_64` directory, run `micromissiles-<version>-StandaloneWindows64.exe`.
### Mac
## Mac
1. Download the tarball file for Darwin: `micromissiles-<version>-darwin.tar.gz`.
2. Untar the tarball. The tarball should contain a single directory called `micromissiles-<version>-darwin`.
3. In the `micromissiles-<version>-darwin` directory, run the app file.
For more detailed information, please refer to our [documentation pages](/Keybinds_and_Controls.html).
# Next Steps
- Familiarize yourself with the [**Keybinds and Controls**](Keybinds_and_Controls.md) to navigate and interact with the simulation.
- Learn how to configure the simulation settings by reading the [**Simulation Configuration Guide**](Simulation_Config_Guide.md).

85
docs/Markdown_Examples.md Normal file
View File

@ -0,0 +1,85 @@
# Markdown Extension Examples
This page demonstrates some of the built-in markdown extensions provided by VitePress.
## Syntax Highlighting
VitePress provides Syntax Highlighting powered by [Shiki](https://github.com/shikijs/shiki), with additional features like line-highlighting:
**Input**
````md
```js{4}
export default {
data () {
return {
msg: 'Highlighted!'
}
}
}
```
````
**Output**
```js{4}
export default {
data () {
return {
msg: 'Highlighted!'
}
}
}
```
## Custom Containers
**Input**
```md
::: info
This is an info box.
:::
::: tip
This is a tip.
:::
::: warning
This is a warning.
:::
::: danger
This is a dangerous warning.
:::
::: details
This is a details block.
:::
```
**Output**
::: info
This is an info box.
:::
::: tip
This is a tip.
:::
::: warning
This is a warning.
:::
::: danger
This is a dangerous warning.
:::
::: details
This is a details block.
:::
## More
Check out the documentation for the [full list of markdown extensions](https://vitepress.dev/guide/markdown).

View File

@ -9,13 +9,13 @@ The main configuration files you will work with are located in the `Assets/Strea
- **Simulation Configurations**:
- **`1_salvo_1_hydra_7_drones.json`**: A simple, barebones example of a simulation configuration featuring a single salvo in a 7-on-7 scenario.
- **`3_salvo_10_hydra_200_drones.json`**: A more complex example with three salvos, illustrating a 210-on-200 scenario. This demonstrates how to set up multiple salvos within the simulation.
- **C# Script**: [`SimulationConfig.cs`](Assets/Scripts/Config/SimulationConfig.cs)
- **C# Script**: [`SimulationConfig.cs`](https://github.com/PisterLab/micromissiles-unity/blob/master/Assets/Scripts/Config/StaticConfig.cs)
- **Model Configurations** (found in `Assets/StreamingAssets/Configs/Models/`):
- **`micromissile.json`**
- **`hydra70.json`**
- **`drone.json`**
- **C# Script**: [`StaticConfig.cs`](Assets/Scripts/Config/StaticConfig.cs)
- **C# Script**: [`StaticConfig.cs`](https://github.com/PisterLab/micromissiles-unity/blob/master/Assets/Scripts/Config/StaticConfig.cs)
### File Locations
@ -37,7 +37,7 @@ The simulation configurations are defined in JSON files that specify the initial
This is a basic configuration featuring a single salvo with one interceptor type (`HYDRA_70`) and seven threat drones.
```json:Assets/StreamingAssets/Configs/1_salvo_1_hydra_7_drones.json
```json
{
"timeScale": 1,
"interceptor_swarm_configs": [
@ -89,7 +89,7 @@ This is a basic configuration featuring a single salvo with one interceptor type
This configuration demonstrates a more complex scenario with three salvos, each launching ten `HYDRA_70` missiles at different times against 200 threat drones. This results in a total of 210 missiles (including submunitions) engaging 200 targets.
```json:Assets/StreamingAssets/Configs/3_salvo_10_hydra_200_drones.json
```json
{
"timeScale": 1,
"interceptor_swarm_configs": [
@ -265,7 +265,7 @@ To define a new inte or threat model:
This script defines the data structures used to interpret the JSON simulation configuration files.
[Assets/Scripts/Config/SimulationConfig.cs](../../Assets/Scripts/Config/SimulationConfig.cs)
[Assets/Scripts/Config/SimulationConfig.cs](https://github.com/PisterLab/micromissiles-unity/blob/master/Assets/Scripts/Config/SimulationConfig.cs)
**Classes**:
@ -281,10 +281,10 @@ This script defines the data structures used to interpret the JSON simulation co
This script defines the classes corresponding to the model configuration JSON structure.
[Assets/Scripts/Config/StaticConfig.cs](../../Assets/Scripts/Config/StaticConfig.cs)
[Assets/Scripts/Config/StaticConfig.cs](https://github.com/PisterLab/micromissiles-unity/blob/master/Assets/Scripts/Config/StaticConfig.cs)
For example:
```csharp:Assets/Scripts/Config/StaticConfig.cs
```csharp
[Serializable]
public class StaticConfig {
[Serializable]
@ -335,8 +335,8 @@ While the simulation is running, you can load a new Simulation Configuration JSO
For further assistance, refer to the comments and documentation within the code files:
- [`SimManager.cs`](Assets/Scripts/SimManager.cs): Manages simulation state and agent creation.
- [`InputManager.cs`](Assets/Scripts/Managers/InputManager.cs): Handles user input and interactions.
- [`SimManager.cs`](https://github.com/PisterLab/micromissiles-unity/blob/master/Assets/Scripts/SimManager.cs): Manages simulation state and agent creation.
- [`InputManager.cs`](https://github.com/PisterLab/micromissiles-unity/blob/master/Assets/Scripts/Managers/InputManager.cs): Handles user input and interactions.
---

17534
docs/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +0,0 @@
{
"scripts": {
"docs:dev": "vuepress dev .",
"docs:build": "vuepress build ."
},
"dependencies": {
"vuepress": "^1.9.10"
},
"devDependencies": {
"@vuepress/bundler-vite": "^2.0.0-rc.16"
}
}

2170
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

11
package.json Normal file
View File

@ -0,0 +1,11 @@
{
"scripts": {
"docs:dev": "vitepress dev docs",
"docs:build": "vitepress build docs",
"docs:preview": "vitepress preview docs"
},
"dependencies": {
"vue": "^3.x.x",
"vitepress": "^1.3.4"
}
}