<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sunfish.git/opendc-web/opendc-web-ui/src/api, 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): Inform user when deleted topology is still used</title>
<updated>2023-03-26T20:22:18+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2023-03-26T20:20:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=a9da76621c1be7a11bf292e868a8f7c22f2ea203'/>
<id>a9da76621c1be7a11bf292e868a8f7c22f2ea203</id>
<content type='text'>
This change fixes #135 which showed that trying to delete a topology
used by a scenario would result in nothing happening in the UI and a 500
error being returned by the server. We check whether a scenario still
references the topology and show an error to the user if that happens.

Fixes #135
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes #135 which showed that trying to delete a topology
used by a scenario would result in nothing happening in the UI and a 500
error being returned by the server. We check whether a scenario still
references the topology and show an error to the user if that happens.

Fixes #135
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(web/ui): Show monthly simulation budget in UI</title>
<updated>2022-10-10T10:14:50+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-10-07T12:04:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=d889a41487c1312ed11deb7e88f0214ac057727c'/>
<id>d889a41487c1312ed11deb7e88f0214ac057727c</id>
<content type='text'>
This change updates the OpenDC web UI to show the monthly simulation
budget of the user in the user dropdown. This provides the user with a
progress bar of the used simulation minutes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the OpenDC web UI to show the monthly simulation
budget of the user in the user dropdown. This provides the user with a
progress bar of the used simulation minutes.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(web/ui): Add support for unauthenticated user access</title>
<updated>2022-04-06T11:39:32+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-04-05T19:15:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=68d9003f8d8d2adcba43cad6366eca5365110e48'/>
<id>68d9003f8d8d2adcba43cad6366eca5365110e48</id>
<content type='text'>
This change updates the web UI and API to support unauthenticated user
access. Such functionality is helpful when there is just a single user
that wants to try OpenDC.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the web UI and API to support unauthenticated user
access. Such functionality is helpful when there is just a single user
that wants to try OpenDC.
</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>refactor(ui): Restructure components per page</title>
<updated>2021-07-19T14:03:11+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-07-19T13:47:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=5e5ab63b280eb446db4090733cd3ad2e97d02018'/>
<id>5e5ab63b280eb446db4090733cd3ad2e97d02018</id>
<content type='text'>
This change updates the source structure of the OpenDC frontend to
follow the page structure.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the source structure of the OpenDC frontend to
follow the page structure.
</pre>
</div>
</content>
</entry>
<entry>
<title>ui: Combine fetching of project relations</title>
<updated>2021-07-08T11:36:39+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-07-08T11:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=2c8d675c2cf140eac05988065a9d20fd2773399a'/>
<id>2c8d675c2cf140eac05988065a9d20fd2773399a</id>
<content type='text'>
This change updates the OpenDC frontend to combine the fetching of
project relations. This means that for a single project, we make only
one additional request to retrieve all its topologies.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the OpenDC frontend to combine the fetching of
project relations. This means that for a single project, we make only
one additional request to retrieve all its topologies.
</pre>
</div>
</content>
</entry>
<entry>
<title>ui: Use React Query defaults to reduce duplication</title>
<updated>2021-07-08T08:53:23+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-07-07T18:13:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=02a2f0f89cb1f39a5f8856bca1971a4e1b12374f'/>
<id>02a2f0f89cb1f39a5f8856bca1971a4e1b12374f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ui: Fetch scenarios and portfolios using React Query</title>
<updated>2021-07-07T15:39:43+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-07-07T15:30:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=9c8a987556d0fb0cdf0eb67e0c191a8dcc5593b9'/>
<id>9c8a987556d0fb0cdf0eb67e0c191a8dcc5593b9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ui: Fetch schedulers and traces using React Query</title>
<updated>2021-07-07T14:36:54+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-07-07T14:36:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=d28a2f194a75eb86095485ae4f88be349bcc18b6'/>
<id>d28a2f194a75eb86095485ae4f88be349bcc18b6</id>
<content type='text'>
This change updates the OpenDC frontend to fetch schedulers and traces
using React Query, removing its dependency on Redux.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the OpenDC frontend to fetch schedulers and traces
using React Query, removing its dependency on Redux.
</pre>
</div>
</content>
</entry>
</feed>
