-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
25 changed files
with
202 additions
and
46 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# Achieving safety with the provided code | ||
|
||
Start typing here... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,42 @@ | ||
# Architecture | ||
|
||
One of the main goals of Serpenta is to decouple the View as much as possible from the Control; i.e., provide a safe, | ||
clean and efficient UI library with defined exposing interfaces and allow for the developer to create their own | ||
communication with their pod (given that they chose not to use the default `GrandDataDistributor`). | ||
clean and efficient UI library with defined exposed ports and allow for the developer to create their own communication | ||
with their pod. | ||
|
||
However, this would strip away a lot of Serpenta's functionality and purpose. | ||
To deal with this, an implementation with Tauri was provided additionally in a Tauri Starter Kit. | ||
|
||
> Serpenta consists of a UI package, a middleware defined using interfaces and a Tauri realization of said middleware. | ||
> | ||
> You can override any realization with your own implementation using the [config object](Configuration-Interface.md) | ||
> or entirely swap out the backend for something else other than Tauri. | ||
## Components of a Serpenta System | ||
|
||
A Serpenta system includes a frontend built on a Svelte-compatible framework and a backend that powers the app, | ||
providing necessary functionality for the UI-required interfaces and additional auxiliary features. | ||
|
||
> A UI-required interface is one of several interfaces upon which the UI kit works. | ||
> These include a Data Distributor, Command Invoker and a Windowing Engine. | ||
> | ||
> Check out more information at the [UI-required interfaces topic](UI-Required-Interfaces.md). | ||
{style="note"} | ||
|
||
### Modularity | ||
|
||
The entire Running Engine subsystem is replaceable by default, and you may opt to use another engine instead. | ||
|
||
> For this you will have to write an entire middleware that implements all required interfaces. | ||
> You can, of course, also choose to implement only specific parts of the configuration. | ||
> | ||
> Check out the [Configuration Interface page](Configuration-Interface.md) for more information. | ||
![](serenta-components.png) | ||
|
||
## Classes and required interfaces | ||
|
||
The entire Tauri Starter subsystem component (or only parts of it) may be swapped for another as mentioned before | ||
in this section. | ||
|
||
![](serpenta-detailed.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# Command Invoker | ||
|
||
Start typing here... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Data Distributor | ||
|
||
The data distributor interface of the middleware configuration is responsible for distributing the stores where needed, | ||
updating them as necessary. |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 2 additions & 2 deletions
4
Writerside/topics/Keybind-Handler.md → Writerside/topics/Keybind-Engine.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# Keybind Handler | ||
# Keybinding Engine | ||
|
||
<primary-label ref="tauri-starter-kit"/> | ||
|
||
Start typing here... | ||
Start typing here... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
# Keybinds | ||
# Keybindings | ||
|
||
<primary-label ref="tauri-starter-kit"/> | ||
|
||
Start typing here... |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Tauri Starter Kit Provided | ||
|
||
<primary-label ref="tauri-starter-kit"/> | ||
|
||
Start typing here... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# UI Required Interfaces | ||
|
||
The children topics of this section describe all the required interfaces that must be implemented to use Serpenta. | ||
|
||
> Each of these interfaces has a Tauri adaptation in the `@delft-hyperloop/create-serpenta-app` package. More | ||
> information can be found on the [Tauri Starter Kit documentation page](Tauri-Starter-Kit.md). | ||
{style="note"} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# Windowing Engine | ||
|
||
Start typing here... |
Oops, something went wrong.