<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sunfish.git/opendc-web/opendc-web-ui/src/components/topologies/map, branch master</title>
<subtitle>The OpenDC BSc thesis repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/'/>
<entry>
<title>Use Quarkus Quinoa for serving web UI (#391)</title>
<updated>2026-03-26T13:02:54+00:00</updated>
<author>
<name>vincent van beek</name>
<email>vincent@vlogic.nl</email>
</author>
<published>2026-03-26T13:02:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=0ffde21b0337c606e2d0ece5bd5434a930a87dcd'/>
<id>0ffde21b0337c606e2d0ece5bd5434a930a87dcd</id>
<content type='text'>
* refactor(web): Migrate to Quarkus 3

This commit updates the OpenDC web server to use Quarkus 3, which
changes annotations to use the Jakarta namespace for annotations.

* refactor(web): Configure runtime variables for web UI

This commit updates the web UI to propagate runtime variables via the
next-runtime-env package. Before, we would need to replace the variables
in the generated sources by Next.js, next-runtime-env works by loading a
JavaScript file when opening the OpenDC web UI which contains the
configuration of the web app.

* refactor(web): Migrate to Quarkus Quinoa

This commit updates the OpenDC web server to make use of Quarkus Quinoa
for serving the web UI. This allows us to deprecate the complex Quarkus
extension for serving the web UI.

* refactor(web): Move web UI into Quarkus web app

This commit moves the web UI into the Quarkus web server module to
ensure we follow Quarkus Quinoa's conventions.

* refactor(web): Merge Quarkus extension into single module

This commit merges the existing Quarkus extensions into a single module
to prevent build complexity.

* refactor(web): Migrate web proto to Java

This commit migrates the web protocol to Java and removes the dependency
on Jandex Gradle.

* refactor(web): Migrate to Quarkus 3

This commit updates the OpenDC web server to use Quarkus 3, which
changes annotations to use the Jakarta namespace for annotations.

* enable DB schema migration on DEV server

* webui is not needed anymore

* remove MAINTAINERS is depricated

* fix quarkus.quinoa properties

* revert properties change, install npm in docker image to allow building the frontend

* pin postgres version, this is a best practice. Fix some properties the old ones are depricated. Added properties for local testing

* fix build error

* :opendc-web:opendc-web-proto:spotlessApply

* fix database schema

---------

Co-authored-by: Fabian Mastenbroek &lt;mail.fabianm@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* refactor(web): Migrate to Quarkus 3

This commit updates the OpenDC web server to use Quarkus 3, which
changes annotations to use the Jakarta namespace for annotations.

* refactor(web): Configure runtime variables for web UI

This commit updates the web UI to propagate runtime variables via the
next-runtime-env package. Before, we would need to replace the variables
in the generated sources by Next.js, next-runtime-env works by loading a
JavaScript file when opening the OpenDC web UI which contains the
configuration of the web app.

* refactor(web): Migrate to Quarkus Quinoa

This commit updates the OpenDC web server to make use of Quarkus Quinoa
for serving the web UI. This allows us to deprecate the complex Quarkus
extension for serving the web UI.

* refactor(web): Move web UI into Quarkus web app

This commit moves the web UI into the Quarkus web server module to
ensure we follow Quarkus Quinoa's conventions.

* refactor(web): Merge Quarkus extension into single module

This commit merges the existing Quarkus extensions into a single module
to prevent build complexity.

* refactor(web): Migrate web proto to Java

This commit migrates the web protocol to Java and removes the dependency
on Jandex Gradle.

* refactor(web): Migrate to Quarkus 3

This commit updates the OpenDC web server to use Quarkus 3, which
changes annotations to use the Jakarta namespace for annotations.

* enable DB schema migration on DEV server

* webui is not needed anymore

* remove MAINTAINERS is depricated

* fix quarkus.quinoa properties

* revert properties change, install npm in docker image to allow building the frontend

* pin postgres version, this is a best practice. Fix some properties the old ones are depricated. Added properties for local testing

* fix build error

* :opendc-web:opendc-web-proto:spotlessApply

* fix database schema

---------

Co-authored-by: Fabian Mastenbroek &lt;mail.fabianm@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>bug(web): Do not offset hover layer after dragging</title>
<updated>2023-03-27T19:31:30+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2023-03-26T20:49:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=efe1cebb4c1d8f07c0f1afb8bf08732d9fe20125'/>
<id>efe1cebb4c1d8f07c0f1afb8bf08732d9fe20125</id>
<content type='text'>
This change fixes #136 which reported that the grid and cursor will fall
out of sync when dragging or moving the grid when placing rooms or
objects.

Fixes #136
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes #136 which reported that the grid and cursor will fall
out of sync when dragging or moving the grid when placing rooms or
objects.

Fixes #136
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(web/ui): Drop dependency on Sass</title>
<updated>2022-11-13T13:17:34+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-11-13T13:17:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=fcb3a5980606a1ab7f15fa9185f9684a7702b24f'/>
<id>fcb3a5980606a1ab7f15fa9185f9684a7702b24f</id>
<content type='text'>
This change updates the OpenDC web UI to not rely on Sass for
stylesheets. CSS in combination with PostCSS has become powerful enough
for our use-cases as indicated by the small differences between the CSS
and SCSS versions of our files.

By switching to CSS, we can make use of Turbopack to build the project,
which is a re-implementation of Webppack in Rust and is able to build
projects much faster.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the OpenDC web UI to not rely on Sass for
stylesheets. CSS in combination with PostCSS has become powerful enough
for our use-cases as indicated by the small differences between the CSS
and SCSS versions of our files.

By switching to CSS, we can make use of Turbopack to build the project,
which is a re-implementation of Webppack in Rust and is able to build
projects much faster.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(web/ui): Drop dependency on FontAwesome</title>
<updated>2022-10-27T09:08:40+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-10-27T09:08:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=18b7ec85dde70ae0bd74d638d573daeaf3e4365f'/>
<id>18b7ec85dde70ae0bd74d638d573daeaf3e4365f</id>
<content type='text'>
This change removes the explicit dependency on FontAwesome. PatternFly
also ships with the FontAwesome icons, so use these icons instead to
reduce the footprint of the application.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change removes the explicit dependency on FontAwesome. PatternFly
also ships with the FontAwesome icons, so use these icons instead to
reduce the footprint of the application.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(web/ui): Fix overflow of topology sidebar</title>
<updated>2022-09-20T14:07:06+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-09-20T10:17:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=78255fc6a1ef18759670682c1d90cee685315493'/>
<id>78255fc6a1ef18759670682c1d90cee685315493</id>
<content type='text'>
This change fixes an issue with the web interface where the sidebar
would overflow due to the large number of rack slots that are displayed
in the sidebar.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes an issue with the web interface where the sidebar
would overflow due to the large number of rack slots that are displayed
in the sidebar.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(web/ui): Do not fail on stale Redux state</title>
<updated>2022-09-20T14:07:06+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-09-20T09:04:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=0b3d0ba3193ebcdeadc6a4b0a192eeb06e9add29'/>
<id>0b3d0ba3193ebcdeadc6a4b0a192eeb06e9add29</id>
<content type='text'>
This change fixes an issue where switching between different topologies
would fail due to stale Redux state. We have updated the components to
take into account that ids may not exist in the Redux store.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes an issue where switching between different topologies
would fail due to stale Redux state. We have updated the components to
take into account that ids may not exist in the Redux store.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(web/ui): Fix deletion of topology</title>
<updated>2022-09-20T14:07:05+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-09-14T11:49:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=419297128ce2ab2c8085c81fafdb843c1135661d'/>
<id>419297128ce2ab2c8085c81fafdb843c1135661d</id>
<content type='text'>
This change fixes an issue with the OpenDC web interface where the user
cannot remove an existing topology from the topology table due to a
programming mistake.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes an issue with the OpenDC web interface where the user
cannot remove an existing topology from the topology table due to a
programming mistake.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(web/ui): Fix hotkeys support in React 18</title>
<updated>2022-05-16T08:01:17+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-04-14T09:41:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=30d502ff637bce778ec3ec5de86e357e61f0d68a'/>
<id>30d502ff637bce778ec3ec5de86e357e61f0d68a</id>
<content type='text'>
This change fixes an issue where the library for hotkeys that we
previously used does not (yet) support React 18. Instead, we switch to a
simpler solution based on React Hooks which is compatible with React 18.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes an issue where the library for hotkeys that we
previously used does not (yet) support React 18. Instead, we switch to a
simpler solution based on React Hooks which is compatible with React 18.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(web/ui): Fix compatibility with new API</title>
<updated>2022-04-04T10:48:05+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-03-07T17:19:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=3d1c02e50ee619598bcd7fad4368be8b4a039e84'/>
<id>3d1c02e50ee619598bcd7fad4368be8b4a039e84</id>
<content type='text'>
This change updates the web interface in React to be compatible with the
new API written in Kotlin. Several changes have been made in the new API
to ensure consistency.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the web interface in React to be compatible with the
new API written in Kotlin. Several changes have been made in the new API
to ensure consistency.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(ui): Extract topology construction out of Sagas</title>
<updated>2021-07-22T12:23:09+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-07-21T13:04:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=54f424a18cc21a52ea518d40893218a07ab55989'/>
<id>54f424a18cc21a52ea518d40893218a07ab55989</id>
<content type='text'>
This change updates the OpenDC frontend to perform the construction of
the topology directly in the reducers instead of performing the
mutations in Redux Sagas as side effects. This allows us to nicely map
actions to mutations in the reducers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the OpenDC frontend to perform the construction of
the topology directly in the reducers instead of performing the
mutations in Redux Sagas as side effects. This allows us to nicely map
actions to mutations in the reducers.
</pre>
</div>
</content>
</entry>
</feed>
