diff --git a/README.md b/README.md index 9de343b0..2cc207c9 100644 --- a/README.md +++ b/README.md @@ -81,25 +81,32 @@ https://capstone-projects-2024-spring.github.io/project-blastpad/docs/requiremen - Wedee + Mustafa Wedee
Mustafa Wedee
- Malik + Mustafa Malik
Mustafa Malik
- Baharudeen + Niaz Baharudeen
Niaz Baharudeen
+ + + Aiden McGonagle +
+ Aiden McGonagle +
+ diff --git a/documentation/docs/meeting-minutes/2024-03-11.md b/documentation/docs/meeting-minutes/2024-03-11.md index 8f106cc1..7b40571b 100644 --- a/documentation/docs/meeting-minutes/2024-03-11.md +++ b/documentation/docs/meeting-minutes/2024-03-11.md @@ -2,7 +2,7 @@ sidebar_position: 6 --- -# 2023-03-11 +# 2024-03-11 ## Sprint 2 diff --git a/documentation/docs/requirements/use-case-descriptions.md b/documentation/docs/requirements/use-case-descriptions.md index 1fa6a801..0f572978 100644 --- a/documentation/docs/requirements/use-case-descriptions.md +++ b/documentation/docs/requirements/use-case-descriptions.md @@ -19,26 +19,26 @@ title: Sequence Diagram 1 – Playing a Game sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen -User->>Blastpad: Select Game & Press Run +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen +User->>BlastPad: Select Game & Press Run -Blastpad->>+Flask: GET startGame?game=game.json +BlastPad->>+Flask: GET startGame?game=game.json Flask->>+Blockly Compiler: Compile selected game Blockly Compiler->>Blockly Compiler: Attempt Compilation Blockly Compiler-->>-Flask: Compilation Successful Flask->>Flask: Attempt to start game -Flask-->>-Blastpad: Game started +Flask-->>-BlastPad: Game started -deactivate Blastpad +deactivate BlastPad ``` @@ -57,25 +57,25 @@ title: "Sequence Diagram 2 - Develop a Game using the BlastPad" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Press "Create New Game" -Blastpad->>+Flask: GET Editor -Flask-->>-Blastpad: Render Editor -User->>Blastpad: Press "Save Game" -Blastpad->>+Flask: Attempt to save workspace -Flask-->>-Blastpad: Return Success Status +User->>BlastPad: Press "Create New Game" +BlastPad->>+Flask: GET Editor +Flask-->>-BlastPad: Render Editor +User->>BlastPad: Press "Save Game" +BlastPad->>+Flask: Attempt to save workspace +Flask-->>-BlastPad: Return Success Status -deactivate Blastpad +deactivate BlastPad ``` @@ -94,15 +94,15 @@ title: "Sequence Diagram 3 - Develop game using laptop" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen User->>+Flask: GET blastpad.local/editor @@ -111,7 +111,7 @@ User->>+Flask: Press "Save Game" Flask->>Flask: Attempt to save workspace Flask-->>-User: Return Success Status -deactivate Blastpad +deactivate BlastPad ``` @@ -132,28 +132,28 @@ title: "Sequence Diagram 4 - Debugging your game" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Press "Create New Game" -Blastpad->>+Flask: GET Editor -Flask-->-Blastpad: Render Editor -User->>Blastpad: Press "Save Game" -Blastpad->>+Flask: Attempt to save workspace +User->>BlastPad: Press "Create New Game" +BlastPad->>+Flask: GET Editor +Flask-->-BlastPad: Render Editor +User->>BlastPad: Press "Save Game" +BlastPad->>+Flask: Attempt to save workspace Flask-->>Flask: Game fails to compile -Flask-->>-Blastpad: Return Verbose Error Message +Flask-->>-BlastPad: Return Verbose Error Message -deactivate Blastpad +deactivate BlastPad ``` @@ -173,29 +173,29 @@ title: "Sequence Diagram 5: Joining a Classroom" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Enter Classroom Invite Code -Blastpad->>+Flask: POST Join Classroom Request +User->>BlastPad: Enter Classroom Invite Code +BlastPad->>+Flask: POST Join Classroom Request Flask->>+Supabase: Check Invite Code Supabase-->>-Flask: Invite Code Valid -Flask-->>-Blastpad: Return Classroom Data +Flask-->>-BlastPad: Return Classroom Data -deactivate Blastpad +deactivate BlastPad ``` @@ -213,59 +213,59 @@ title: "Sequence Diagram 6 - Viewing and playing a published game" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Enter Classroom Invite Code -Blastpad->>+Flask: POST Join Classroom Request +User->>BlastPad: Enter Classroom Invite Code +BlastPad->>+Flask: POST Join Classroom Request Flask->>+Supabase: Check Invite Code Supabase-->>-Flask: Invite Code Valid -Flask-->>-Blastpad: Return Classroom Data +Flask-->>-BlastPad: Return Classroom Data -User->>Blastpad: Select Classroom Gallery -Blastpad->>+Flask: GET Classroom Page +User->>BlastPad: Select Classroom Gallery +BlastPad->>+Flask: GET Classroom Page Flask->>+Supabase: Retrieve Games in Classroom Supabase-->>-Flask: Array of Classroom Games -Flask-->>-Blastpad: Render Classroom Page +Flask-->>-BlastPad: Render Classroom Page -User->>Blastpad: Press Download on a game -Blastpad->>+Flask: GET Classroom/x/game +User->>BlastPad: Press Download on a game +BlastPad->>+Flask: GET Classroom/x/game Flask->>+Supabase: Download Workspace JSON Supabase-->>-Flask: Workspace JSON Flask->>+Supabase: Download Workspace Image Supabase-->>-Flask: Workspace Image -Flask-->>-Blastpad: Return Successful Download +Flask-->>-BlastPad: Return Successful Download -User->>Blastpad: Select Home Screen -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +User->>BlastPad: Select Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Game & Press Run -Blastpad->>+Flask: GET startGame?game=game.json +User->>BlastPad: Select Game & Press Run +BlastPad->>+Flask: GET startGame?game=game.json Flask->>+Blockly Compiler: Compile selected game Blockly Compiler->>Blockly Compiler: Attempt Compilation Blockly Compiler-->>-Flask: Compilation Successful Flask->>Flask: Attempt to start game -Flask-->>-Blastpad: Game started +Flask-->>-BlastPad: Game started -deactivate Blastpad +deactivate BlastPad ``` ## Use Case 7 - Uploading a game to a Classroom @@ -283,27 +283,27 @@ title: "Sequence Diagram 7 - Uploading a game to a Classroom" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen -User->>Blastpad: Select Game & Press Share to Classroom +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen +User->>BlastPad: Select Game & Press Share to Classroom -Blastpad->>+Flask: POST /Classrooms/x/share +BlastPad->>+Flask: POST /Classrooms/x/share Flask->>+Supabase: Upload Workspace JSON Supabase-->>-Flask: Return Successful Upload Flask->>+Supabase: Upload Workspace Image Supabase-->>-Flask: Return Successful Upload -Flask-->>-Blastpad: Return Successful Share +Flask-->>-BlastPad: Return Successful Share -deactivate Blastpad +deactivate BlastPad ``` @@ -322,52 +322,52 @@ title: "Sequence Diagram 6 - Viewing and playing a published game" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Select Community Hub -Blastpad->>+Flask: GET Community Hub Page +User->>BlastPad: Select Community Hub +BlastPad->>+Flask: GET Community Hub Page Flask->>+Supabase: Retrieve Games in the Community Hub Supabase-->>-Flask: Array of Games -Flask-->>-Blastpad: Render Community Hub Page +Flask-->>-BlastPad: Render Community Hub Page -User->>Blastpad: Press Download on a game -Blastpad->>+Flask: GET Community/game +User->>BlastPad: Press Download on a game +BlastPad->>+Flask: GET Community/game Flask->>+Supabase: Download Workspace JSON Supabase-->>-Flask: Workspace JSON Flask->>+Supabase: Download Workspace Image Supabase-->>-Flask: Workspace Image -Flask-->>-Blastpad: Return Successful Download +Flask-->>-BlastPad: Return Successful Download -User->>Blastpad: Select Home Screen -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +User->>BlastPad: Select Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Game & Press Run -Blastpad->>+Flask: GET startGame?game=game.json +User->>BlastPad: Select Game & Press Run +BlastPad->>+Flask: GET startGame?game=game.json Flask->>+Blockly Compiler: Compile selected game Blockly Compiler->>Blockly Compiler: Attempt Compilation Blockly Compiler-->>-Flask: Compilation Successful Flask->>Flask: Attempt to start game -Flask-->>-Blastpad: Game started +Flask-->>-BlastPad: Game started -deactivate Blastpad +deactivate BlastPad ``` @@ -386,27 +386,27 @@ title: "Sequence Diagram 9 - Uploading a game to the Community Hub" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen -User->>Blastpad: Select Game & Press Share to Community Hub +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen +User->>BlastPad: Select Game & Press Share to Community Hub -Blastpad->>+Flask: POST /community/share +BlastPad->>+Flask: POST /community/share Flask->>+Supabase: Upload Workspace JSON Supabase-->>-Flask: Return Successful Upload Flask->>+Supabase: Upload Workspace Image Supabase-->>-Flask: Return Successful Upload -Flask-->>-Blastpad: Return Successful Share +Flask-->>-BlastPad: Return Successful Share -deactivate Blastpad +deactivate BlastPad ``` @@ -430,28 +430,28 @@ title: "Sequence Diagram 10 - Creating a Classroom" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Select "Create" And Enter Classroom Information -Blastpad->>+Flask: POST Create Classroom Request +User->>BlastPad: Select "Create" And Enter Classroom Information +BlastPad->>+Flask: POST Create Classroom Request Flask->>+Supabase: Create new Classroom Record Supabase-->>-Flask: New Classroom Created -Flask-->>-Blastpad: Return Classroom Data +Flask-->>-BlastPad: Return Classroom Data -deactivate Blastpad +deactivate BlastPad @@ -474,30 +474,30 @@ title: "Sequence Diagram 11 - Configuring the WiFi" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Connect Keyboard -Blastpad-->>User: Acknowledge New Input Device +User->>BlastPad: Connect Keyboard +BlastPad-->>User: Acknowledge New Input Device -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Select "WiFi" button -Blastpad->>+Flask: GET local access points -Flask-->-Blastpad: Return Local Access Points -User->>Blastpad: Select Network, enter password +User->>BlastPad: Select "WiFi" button +BlastPad->>+Flask: GET local access points +Flask-->-BlastPad: Return Local Access Points +User->>BlastPad: Select Network, enter password -Blastpad->>+Flask: POST Connect to Access Point +BlastPad->>+Flask: POST Connect to Access Point Flask->>Flask: Attempt Connection -Flask-->>-Blastpad: Return Successful Connection +Flask-->>-BlastPad: Return Successful Connection -deactivate Blastpad +deactivate BlastPad ``` \ No newline at end of file diff --git a/documentation/docs/system-architecture/class-diagram.md b/documentation/docs/system-architecture/class-diagram.md index 1e8dc977..59bffd59 100644 --- a/documentation/docs/system-architecture/class-diagram.md +++ b/documentation/docs/system-architecture/class-diagram.md @@ -290,7 +290,7 @@ The **Game**, **CodeCompiler**, **BlocklyEditor** and the **Block** classes are ### NetworkSettings
-- Manages the Blastpad's WiFi connection supporting scanning for new networks, connecting to one, and disconnecting from one +- Manages the BlastPad's WiFi connection supporting scanning for new networks, connecting to one, and disconnecting from one
### Game diff --git a/documentation/docs/system-architecture/electrical-diagrams.md b/documentation/docs/system-architecture/electrical-diagrams.md index 5322ab84..cfa5413b 100644 --- a/documentation/docs/system-architecture/electrical-diagrams.md +++ b/documentation/docs/system-architecture/electrical-diagrams.md @@ -6,4 +6,4 @@ sidebar_position: 5 ## Schematic -![Schematic SVG](https://raw.githubusercontent.com/Capstone-Projects-2024-Spring/project-blastpad/7ef4be2346e2854ac084c09f1e4f323d9ba2ffe4/BlastPad%20Schematic.svg) \ No newline at end of file +![Schematic SVG](https://raw.githubusercontent.com/Capstone-Projects-2024-Spring/project-blastpad/assets/BlastPad%20Schematic.svg) \ No newline at end of file diff --git a/documentation/docs/system-architecture/sequence-diagrams.md b/documentation/docs/system-architecture/sequence-diagrams.md index 43dce0b9..36509a25 100644 --- a/documentation/docs/system-architecture/sequence-diagrams.md +++ b/documentation/docs/system-architecture/sequence-diagrams.md @@ -19,26 +19,26 @@ title: Sequence Diagram 1 – Playing a Game sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen -User->>Blastpad: Select Game & Press Run +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen +User->>BlastPad: Select Game & Press Run -Blastpad->>+Flask: GET startGame?game=game.json +BlastPad->>+Flask: GET startGame?game=game.json Flask->>+Blockly Compiler: Compile selected game Blockly Compiler->>Blockly Compiler: Attempt Compilation Blockly Compiler-->>-Flask: Compilation Successful Flask->>Flask: Attempt to start game -Flask-->>-Blastpad: Game started +Flask-->>-BlastPad: Game started -deactivate Blastpad +deactivate BlastPad ``` @@ -57,25 +57,25 @@ title: "Sequence Diagram 2 - Develop a Game using the BlastPad" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Press "Create New Game" -Blastpad->>+Flask: GET Editor -Flask-->>-Blastpad: Render Editor -User->>Blastpad: Press "Save Game" -Blastpad->>+Flask: Attempt to save workspace -Flask-->>-Blastpad: Return Success Status +User->>BlastPad: Press "Create New Game" +BlastPad->>+Flask: GET Editor +Flask-->>-BlastPad: Render Editor +User->>BlastPad: Press "Save Game" +BlastPad->>+Flask: Attempt to save workspace +Flask-->>-BlastPad: Return Success Status -deactivate Blastpad +deactivate BlastPad ``` @@ -94,15 +94,15 @@ title: "Sequence Diagram 3 - Develop game using laptop" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen User->>+Flask: GET blastpad.local/editor @@ -111,7 +111,7 @@ User->>+Flask: Press "Save Game" Flask->>Flask: Attempt to save workspace Flask-->>-User: Return Success Status -deactivate Blastpad +deactivate BlastPad ``` @@ -132,28 +132,28 @@ title: "Sequence Diagram 4 - Debugging your game" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Press "Create New Game" -Blastpad->>+Flask: GET Editor -Flask-->-Blastpad: Render Editor -User->>Blastpad: Press "Save Game" -Blastpad->>+Flask: Attempt to save workspace +User->>BlastPad: Press "Create New Game" +BlastPad->>+Flask: GET Editor +Flask-->-BlastPad: Render Editor +User->>BlastPad: Press "Save Game" +BlastPad->>+Flask: Attempt to save workspace Flask-->>Flask: Game fails to compile -Flask-->>-Blastpad: Return Verbose Error Message +Flask-->>-BlastPad: Return Verbose Error Message -deactivate Blastpad +deactivate BlastPad ``` @@ -173,29 +173,29 @@ title: "Sequence Diagram 5: Joining a Classroom" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Enter Classroom Invite Code -Blastpad->>+Flask: POST Join Classroom Request +User->>BlastPad: Enter Classroom Invite Code +BlastPad->>+Flask: POST Join Classroom Request Flask->>+Supabase: Check Invite Code Supabase-->>-Flask: Invite Code Valid -Flask-->>-Blastpad: Return Classroom Data +Flask-->>-BlastPad: Return Classroom Data -deactivate Blastpad +deactivate BlastPad ``` @@ -213,59 +213,59 @@ title: "Sequence Diagram 6 - Viewing and playing a published game" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Enter Classroom Invite Code -Blastpad->>+Flask: POST Join Classroom Request +User->>BlastPad: Enter Classroom Invite Code +BlastPad->>+Flask: POST Join Classroom Request Flask->>+Supabase: Check Invite Code Supabase-->>-Flask: Invite Code Valid -Flask-->>-Blastpad: Return Classroom Data +Flask-->>-BlastPad: Return Classroom Data -User->>Blastpad: Select Classroom Gallery -Blastpad->>+Flask: GET Classroom Page +User->>BlastPad: Select Classroom Gallery +BlastPad->>+Flask: GET Classroom Page Flask->>+Supabase: Retrieve Games in Classroom Supabase-->>-Flask: Array of Classroom Games -Flask-->>-Blastpad: Render Classroom Page +Flask-->>-BlastPad: Render Classroom Page -User->>Blastpad: Press Download on a game -Blastpad->>+Flask: GET Classroom/x/game +User->>BlastPad: Press Download on a game +BlastPad->>+Flask: GET Classroom/x/game Flask->>+Supabase: Download Workspace JSON Supabase-->>-Flask: Workspace JSON Flask->>+Supabase: Download Workspace Image Supabase-->>-Flask: Workspace Image -Flask-->>-Blastpad: Return Successful Download +Flask-->>-BlastPad: Return Successful Download -User->>Blastpad: Select Home Screen -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +User->>BlastPad: Select Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Game & Press Run -Blastpad->>+Flask: GET startGame?game=game.json +User->>BlastPad: Select Game & Press Run +BlastPad->>+Flask: GET startGame?game=game.json Flask->>+Blockly Compiler: Compile selected game Blockly Compiler->>Blockly Compiler: Attempt Compilation Blockly Compiler-->>-Flask: Compilation Successful Flask->>Flask: Attempt to start game -Flask-->>-Blastpad: Game started +Flask-->>-BlastPad: Game started -deactivate Blastpad +deactivate BlastPad ``` ## Use Case 7 - Uploading a game to a Classroom @@ -283,27 +283,27 @@ title: "Sequence Diagram 7 - Uploading a game to a Classroom" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen -User->>Blastpad: Select Game & Press Share to Classroom +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen +User->>BlastPad: Select Game & Press Share to Classroom -Blastpad->>+Flask: POST /Classrooms/x/share +BlastPad->>+Flask: POST /Classrooms/x/share Flask->>+Supabase: Upload Workspace JSON Supabase-->>-Flask: Return Successful Upload Flask->>+Supabase: Upload Workspace Image Supabase-->>-Flask: Return Successful Upload -Flask-->>-Blastpad: Return Successful Share +Flask-->>-BlastPad: Return Successful Share -deactivate Blastpad +deactivate BlastPad ``` @@ -322,52 +322,52 @@ title: "Sequence Diagram 6 - Viewing and playing a published game" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Select Community Hub -Blastpad->>+Flask: GET Community Hub Page +User->>BlastPad: Select Community Hub +BlastPad->>+Flask: GET Community Hub Page Flask->>+Supabase: Retrieve Games in the Community Hub Supabase-->>-Flask: Array of Games -Flask-->>-Blastpad: Render Community Hub Page +Flask-->>-BlastPad: Render Community Hub Page -User->>Blastpad: Press Download on a game -Blastpad->>+Flask: GET Community/game +User->>BlastPad: Press Download on a game +BlastPad->>+Flask: GET Community/game Flask->>+Supabase: Download Workspace JSON Supabase-->>-Flask: Workspace JSON Flask->>+Supabase: Download Workspace Image Supabase-->>-Flask: Workspace Image -Flask-->>-Blastpad: Return Successful Download +Flask-->>-BlastPad: Return Successful Download -User->>Blastpad: Select Home Screen -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +User->>BlastPad: Select Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Game & Press Run -Blastpad->>+Flask: GET startGame?game=game.json +User->>BlastPad: Select Game & Press Run +BlastPad->>+Flask: GET startGame?game=game.json Flask->>+Blockly Compiler: Compile selected game Blockly Compiler->>Blockly Compiler: Attempt Compilation Blockly Compiler-->>-Flask: Compilation Successful Flask->>Flask: Attempt to start game -Flask-->>-Blastpad: Game started +Flask-->>-BlastPad: Game started -deactivate Blastpad +deactivate BlastPad ``` @@ -386,27 +386,27 @@ title: "Sequence Diagram 9 - Uploading a game to the Community Hub" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen -User->>Blastpad: Select Game & Press Share to Community Hub +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen +User->>BlastPad: Select Game & Press Share to Community Hub -Blastpad->>+Flask: POST /community/share +BlastPad->>+Flask: POST /community/share Flask->>+Supabase: Upload Workspace JSON Supabase-->>-Flask: Return Successful Upload Flask->>+Supabase: Upload Workspace Image Supabase-->>-Flask: Return Successful Upload -Flask-->>-Blastpad: Return Successful Share +Flask-->>-BlastPad: Return Successful Share -deactivate Blastpad +deactivate BlastPad ``` @@ -430,28 +430,28 @@ title: "Sequence Diagram 10 - Creating a Classroom" sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Select "Create" And Enter Classroom Information -Blastpad->>+Flask: POST Create Classroom Request +User->>BlastPad: Select "Create" And Enter Classroom Information +BlastPad->>+Flask: POST Create Classroom Request Flask->>+Supabase: Create new Classroom Record Supabase-->>-Flask: New Classroom Created -Flask-->>-Blastpad: Return Classroom Data +Flask-->>-BlastPad: Return Classroom Data -deactivate Blastpad +deactivate BlastPad @@ -474,30 +474,30 @@ title: "Sequence Diagram 11 - Configuring the WiFi" --- sequenceDiagram actor User -User->>+Blastpad: Power On -Blastpad->>+Flask: Start Flask Server -Flask-->>-Blastpad: Flask Server Started -Blastpad->>Blastpad: Start X Server -Blastpad->>Blastpad: Launch Chromium Browser +User->>+BlastPad: Power On +BlastPad->>+Flask: Start Flask Server +Flask-->>-BlastPad: Flask Server Started +BlastPad->>BlastPad: Start X Server +BlastPad->>BlastPad: Launch Chromium Browser -Blastpad->>+Flask: GET Home Screen -Flask-->>-Blastpad: Render Home Screen +BlastPad->>+Flask: GET Home Screen +Flask-->>-BlastPad: Render Home Screen -User->>Blastpad: Connect Keyboard -Blastpad-->>User: Acknowledge New Input Device +User->>BlastPad: Connect Keyboard +BlastPad-->>User: Acknowledge New Input Device -User->>Blastpad: Select Settings -Blastpad->>+Flask: GET Settings -Flask-->>-Blastpad: Render Settings Page +User->>BlastPad: Select Settings +BlastPad->>+Flask: GET Settings +Flask-->>-BlastPad: Render Settings Page -User->>Blastpad: Select "WiFi" button -Blastpad->>+Flask: GET local access points -Flask-->-Blastpad: Return Local Access Points -User->>Blastpad: Select Network, enter password +User->>BlastPad: Select "WiFi" button +BlastPad->>+Flask: GET local access points +Flask-->-BlastPad: Return Local Access Points +User->>BlastPad: Select Network, enter password -Blastpad->>+Flask: POST Connect to Access Point +BlastPad->>+Flask: POST Connect to Access Point Flask->>Flask: Attempt Connection -Flask-->>-Blastpad: Return Successful Connection +Flask-->>-BlastPad: Return Successful Connection -deactivate Blastpad +deactivate BlastPad ``` \ No newline at end of file diff --git a/documentation/docs/testing/unit-testing.md b/documentation/docs/testing/unit-testing.md index f4d09ef3..bdda896e 100644 --- a/documentation/docs/testing/unit-testing.md +++ b/documentation/docs/testing/unit-testing.md @@ -187,7 +187,7 @@ You can find the generated unit test report [here.](https://htmlpreview.github.i - Game selection menu is displayed, allowing the user to choose a saved workspace to edit or create a new one. -### Access Editor From Blastpad +### Access Editor From BlastPad
diff --git a/documentation/src/pages/index.js b/documentation/src/pages/index.js index 280557a0..dd0a81c7 100644 --- a/documentation/src/pages/index.js +++ b/documentation/src/pages/index.js @@ -31,8 +31,8 @@ export default function Home() { const {siteConfig} = useDocusaurusContext(); return ( + title={`${siteConfig.title}`} + description="A kid-friendly handheld gaming device and block-based coding suite that makes it easy to create, play, and share custom games.">