Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

APIs for creating, editing, and deleting plugins #59

Closed
Tracked by #57
alexanderson1993 opened this issue Oct 21, 2021 · 0 comments · Fixed by #71
Closed
Tracked by #57

APIs for creating, editing, and deleting plugins #59

alexanderson1993 opened this issue Oct 21, 2021 · 0 comments · Fixed by #71
Assignees

Comments

@alexanderson1993
Copy link
Member

alexanderson1993 commented Oct 21, 2021

A bit of explanation. Skip ahead to the "Net Request" section if you just want to know what this issue is about.

Okay, there is currently one way of getting data from the client to the server: Inputs. Inputs are given parameters, make changes to the database, and trigger publishes. Pretty simple.

There are currently two ways of getting data from the server to the client: Data Streams and Card Subscriptions.

Data Streams are pretty simple. Some data needs to be sent at high frequency. To keep bandwidth low, we only send the kind of data that would change frequently - XYZ position and rotation. Cards can subscribe to a data stream by exporting a function that filters the list of all entities so the card only gets the data for those entities.

Card Subscriptions are also defined by cards and cause the server to automatically send data to clients, without them even needing to ask for it. The card exports a fetch function which is called when the card is first loaded and whenever there is change to the data (signaled by a pubsub.publish call). That function collects the data the card needs and sends it down. Optionally, card subscriptions can define a filter function, which will only make the fetch function call if the filter function returns true.

Since the server automatically sends the card subscription data, it's not possible to pass parameters to those functions. The only "parameter" the fetch and filter functions get is the ID of the client making the request, which they can use to find out what ship and station are assigned to that client and derive even more context from that.

Net Request

In some cases, though, we need to pass parameters to get data. This came up as I was working on the plugins, where I wanted to just subscribe to changes to a single plugin, but the current data fetching mechanisms don't provide that.

So, here's how Net Requests work. The client sends a web socket message that looks like {type: "netRequest", data:{requestName:string, params:any}, requestId:string} to the server. The server IDs the subscription to keep track of it, calls a function matching the requestName with the params that were sent, and starts sending {type:"netRequestData", data:any} messages back to the client. Those messages are triggered by pubsub.publish calls, just like card subscriptions, and call the function for each subscribed client.

Net Requests can choose to not send a message to a client, based on the client context or the parameters passed in, by throw-ing null.

export const pluginRequests = {
  // ...
  plugin(context: DataContext, params:{pluginId:string}, publishParams:{pluginId:string}) {
    if (params.pluginId !== publishParams.pluginId) throw null; // Don't send the update to this client
    // Collect the rest of the data
  }
  // ...
}

Net Requests are defined in the /server/src/netRequests folder, and look an awful lot like netSends - just with subscription handling.

Net Requests can be ended either by the client disconnecting or the client sending a web socket message that says {"type": "netRequestEnd", requestId:string}. Changing parameters for the request requires unsubscribing and resubscribing.

On the client, requests can be made using a new hook called useNetRequest. The hook takes two parameters - the name of the request and the params for the request, and it returns the data, automatically updating when new data comes in. Behind the scenes, the hook takes care of sending the appropriate WebSocket messages, caching the data, and providing it to the component.

@alexanderson1993 alexanderson1993 mentioned this issue Oct 21, 2021
12 tasks
@alexanderson1993 alexanderson1993 moved this to ⏳Pending Approval in Thorium Nova Roadmap Oct 21, 2021
@alexanderson1993 alexanderson1993 self-assigned this Oct 22, 2021
@alexanderson1993 alexanderson1993 moved this from ⏳Pending Approval to 🛠 In Progress in Thorium Nova Roadmap Oct 22, 2021
alexanderson1993 added a commit that referenced this issue Oct 23, 2021
This makes it possible to have clients request any data
using parameters. It's basically a glorified real-time live data
REST API over websockets, really.

The cool thing about it is that it's implemented with React Suspense
so to the developer, it behaves as if you were just calling a function.

Closes #59
@alexanderson1993 alexanderson1993 linked a pull request Oct 23, 2021 that will close this issue
11 tasks
alexanderson1993 added a commit that referenced this issue Oct 30, 2021
* Add the ability for Thorium Nova to host plugin assets. Closes #64

* Starting on the plugin editing UI

* Initial UI for the plugin configuration page.

* Basic plugin definition. Closes #58

* Implement the NetRequest system

This makes it possible to have clients request any data
using parameters. It's basically a glorified real-time live data
REST API over websockets, really.

The cool thing about it is that it's implemented with React Suspense
so to the developer, it behaves as if you were just calling a function.

Closes #59
alexanderson1993 added a commit that referenced this issue Nov 2, 2021
* Add the ability for Thorium Nova to host plugin assets. Closes #64

* Starting on the plugin editing UI

* Initial UI for the plugin configuration page.

* Basic plugin definition. Closes #58

* Implement the NetRequest system

This makes it possible to have clients request any data
using parameters. It's basically a glorified real-time live data
REST API over websockets, really.

The cool thing about it is that it's implemented with React Suspense
so to the developer, it behaves as if you were just calling a function.

Closes #59

* UPdate the properties of plugins. Closes #60

* Starting on asset upload.
Replaced the WebSocket netsend API with HTTP,
since it makes it easier to include the uploaded files
inline.

Todo: Create a utility function for moving files
wherever you want, most likely placing them inside the
assets folder. The good news is that the input function
is able to decide whatever they want to do with the file,
which is nice.

* Fix an issue

* Add support for uploading a cover image to a plugin.
alexanderson1993 added a commit that referenced this issue Nov 2, 2021
* Add the ability for Thorium Nova to host plugin assets. Closes #64

* Starting on the plugin editing UI

* Initial UI for the plugin configuration page.

* Basic plugin definition. Closes #58

* Implement the NetRequest system

This makes it possible to have clients request any data
using parameters. It's basically a glorified real-time live data
REST API over websockets, really.

The cool thing about it is that it's implemented with React Suspense
so to the developer, it behaves as if you were just calling a function.

Closes #59

* UPdate the properties of plugins. Closes #60

* Starting on asset upload.
Replaced the WebSocket netsend API with HTTP,
since it makes it easier to include the uploaded files
inline.

Todo: Create a utility function for moving files
wherever you want, most likely placing them inside the
assets folder. The good news is that the input function
is able to decide whatever they want to do with the file,
which is nice.

* Fix an issue

* Add support for uploading a cover image to a plugin.

* Clean up the UI code for plugin config.

* Lots of changes to plugins.

Begin storing data as YAML, to make it easier to edit by hand.

Refactor the db-fs package to use class inheritance rather than wrapping objects.
This provides a neater experience, with fewer hacks for the end user,
although the implementation itself is full of hacks ;)

Created a function that can check existing names to make sure names
aren't being duplicated. This makes it possible to use names as IDs
while still keeping them unique.

Add a Snapshot button to the development version of the app. This
serves as the save button, which makes it so you can restart the server
to get it back to an expected state, but click the button to save the
state again.

Started writing plugins to the file system. Yay!
alexanderson1993 added a commit that referenced this issue Nov 4, 2021
* Add the ability for Thorium Nova to host plugin assets. Closes #64

* Starting on the plugin editing UI

* Initial UI for the plugin configuration page.

* Basic plugin definition. Closes #58

* Implement the NetRequest system

This makes it possible to have clients request any data
using parameters. It's basically a glorified real-time live data
REST API over websockets, really.

The cool thing about it is that it's implemented with React Suspense
so to the developer, it behaves as if you were just calling a function.

Closes #59

* UPdate the properties of plugins. Closes #60

* Starting on asset upload.
Replaced the WebSocket netsend API with HTTP,
since it makes it easier to include the uploaded files
inline.

Todo: Create a utility function for moving files
wherever you want, most likely placing them inside the
assets folder. The good news is that the input function
is able to decide whatever they want to do with the file,
which is nice.

* Fix an issue

* Add support for uploading a cover image to a plugin.

* Clean up the UI code for plugin config.

* Lots of changes to plugins.

Begin storing data as YAML, to make it easier to edit by hand.

Refactor the db-fs package to use class inheritance rather than wrapping objects.
This provides a neater experience, with fewer hacks for the end user,
although the implementation itself is full of hacks ;)

Created a function that can check existing names to make sure names
aren't being duplicated. This makes it possible to use names as IDs
while still keeping them unique.

Add a Snapshot button to the development version of the app. This
serves as the save button, which makes it so you can restart the server
to get it back to an expected state, but click the button to save the
state again.

Started writing plugins to the file system. Yay!

* Working on creating the first plugin aspect: Ships

* feat(Plugins): Add support for configuring ship templates in plugins.

* Cleanup.

* Fix type error.

* Fix issues with image uploading.
github-actions bot pushed a commit that referenced this issue Dec 17, 2021
# 1.0.0-alpha.1 (2021-12-17)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 17, 2021
# 1.0.0-alpha.1 (2021-12-17)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 17, 2021
# 1.0.0-alpha.1 (2021-12-17)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 21, 2021
# 1.0.0-alpha.1 (2021-12-21)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 21, 2021
# 1.0.0-alpha.1 (2021-12-21)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 21, 2021
# 1.0.0-alpha.1 (2021-12-21)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 21, 2021
# 1.0.0-alpha.1 (2021-12-21)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 22, 2021
# 1.0.0-alpha.1 (2021-12-22)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 23, 2021
# 1.0.0-alpha.1 (2021-12-23)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Dec 23, 2021
# 1.0.0-alpha.1 (2021-12-23)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
github-actions bot pushed a commit that referenced this issue Apr 21, 2022
# 1.0.0-alpha.1 (2022-04-21)

### Bug Fixes

* **Connection:** Fix an issue where initial data was missing important pieces. ([38511c7](38511c7))
* **HTTPS:** Fixes an issue with connecting using HTTPS. Closes [#206](#206) ([f721b2a](f721b2a))
* **Issue Tracker:** Fixes an issue where the issue tracker doesn't submit properly. Closes [#200](#200) ([a77aef5](a77aef5))
* **NetRequest:** Improves the subscription process for net requests. Closes [#151](#151) ([#152](#152)) ([19ee470](19ee470))
* **Networking:** Fixes an issue where reconnecting doesn't restart netRequests. Closes [#79](#79) ([ed42a80](ed42a80))

### Features

* **Client:** Make it possible to assign a client to a station. ([#118](#118)) ([0e1119b](0e1119b)), closes [#92](#92)
* **Docs:** Add a built-in search ([#55](#55)) ([0b178db](0b178db))
* **Docs:** Added more docs for NetRequests and writing plugins. ([4f7eaa9](4f7eaa9))
* **Flight:** Add the UI for configuring the crew for a flight. Closes [#100](#100) ([c8c2198](c8c2198))
* **Issue Tracker:** Add the issue tracker component ([#142](#142)) ([ac16ff7](ac16ff7)), closes [#83](#83)
* **Plugins:** Add support for configuring ship templates in plugins. ([1640856](1640856)), closes [#64](#64) [#58](#58) [#59](#59) [#60](#60)
* **Plugins:** Asset uploading ([f082d47](f082d47))
* **Ship Map:** Add deck creation and image upload. Closes [#166](#166). Closes [#171](#171). ([55970ab](55970ab))
* **Ship Map:** Add the backend for adding and removing nodes and edges from the ship map. ([49fa053](49fa053))
* **Ship Map:** Add the backend for creating decks on a ship and uploading background images. ([0bfd79d](0bfd79d))
* **Ship Map:** Adds the ability to configure the node and edge graph for ship maps. ([5ecb1ac](5ecb1ac))
* **Ship Systems:** Add the backend structures for defining ship systems. ([d13c17c](d13c17c))
* **Star Map:** Add an editor palette for updating properties of solar systems. ([877156c](877156c))
* **Star Map:** Add auto-generated nebula background to the interstellar and system maps. ([18be783](18be783))
* **Star Map:** Add backend and API for adding, updating, and deleting stars from solar systems. Closes [#174](#174) ([10c71a3](10c71a3))
* **Star Map:** Add backend and API for adding, updating, and deleting stars from solar systems. Closes [#174](#174) ([681e97a](681e97a))
* **Star Map:** Add the APIs for adding, removing, and updating solar system plugins. Refs [#173](#173) ([f469d69](f469d69))
* **Star Map:** Add the backend data structure for storing Solar Systems in plugins. Refs [#173](#173) ([febab2c](febab2c))
* **Star Map:** Add the backend structures for stars, planets, and moons. ([8230488](8230488))
* **Star Map:** Clean up the 3D view and create a top-down 2D view. Closes [#179](#179). Closes [#178](#178). ([a0675b4](a0675b4))
* **Star Map:** Enables configuring solar systems, including stars and planets. ([96ed284](96ed284))
* **Star Map:** Major improvements to the camera controls for the interstellar star map. ([0141d6d](0141d6d))
* **Station:** Add the ability to escape from cards ([#153](#153)) ([86bba7a](86bba7a)), closes [#146](#146) [#151](#151)
* **Stations:** Create the necessary scaffolding for a station complement plugin aspect. ([3b02377](3b02377)), closes [#87](#87)
* **Station:** Station Layout ([#139](#139)) ([13d0e9b](13d0e9b))
* **Themes:** Add the ability to assign a theme to a ship. Closes [#133](#133) ([#145](#145)) ([fb5eb5c](fb5eb5c))
* **Thorium Account:** Add support for signing into the Thorium Account within Thorium Nova. ([#106](#106)) ([8b5b58a](8b5b58a))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant