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

feat: in-browser graphical interface using GraphQL APIs #3136

Open
wants to merge 41 commits into
base: master
Choose a base branch
from

Conversation

ItsTiz
Copy link

@ItsTiz ItsTiz commented Feb 16, 2024

This PR launches a simulation using a GraphQL server alongside a web client interface (made in Kotlin-JS) accessible from localhost:9090.

To launch the simulation execute this task:

\gradlew.bat :alchemist-webgui:runWebGui PsimulationFile="absolute/path/nodes.yml"

The PsimulationFile parameter accepts the absolute path to the .yaml configuration file.

In order to visualize correctly all the data retrieved from the APIs, the page needs to be consulted from a browser in which CORS policies have been disabled. Even though the web client hosting the page has been instructed to disable those policies, it still does not seem to allow the passthrough of data. This needs further investigation, and the problem will be assessed in the future.

For Chrome users this can be achieved by executing the browser with the following parameters:

--disable-web-security
--user-data-dir="arbitrary/path/"
--disable-site-isolation-trials

ItsTiz and others added 19 commits January 19, 2024 11:39
the webgui module represents alchemist simulation's data on a wep page.
nodes now are represented in a canvas context
nodes now are represented in a canvas context
restructured web page dom
changed style features
minor ui tweaks
fix(webgui): Fixed canvas zooming bug
Now clicking on a node presents its properties, concentrations and reactions
Added custom component for collapsible views
Changes in the overall UI structure
chore(javadoc): Added javadoc for all classes and methods
chore(webgui): Cleaned code
@DanySK
Copy link
Member

DanySK commented Feb 23, 2024

enabling automatic updates via merge

@DanySK
Copy link
Member

DanySK commented Feb 28, 2024

@ItsTiz, can you fix the merge conflict, push, and make sure that the build passes? It is a pre-requisite for the PR to get merged

@ItsTiz
Copy link
Author

ItsTiz commented Feb 29, 2024

I merged the last changes. Still, some checks - fewer than before - keep failing. I took a quick look and there seems to be an issue with tasks which do not depend from my module (graphql module tests). Also, I should have corrected the original dependency problem which prevented the complete build process. @AngeloFilaseta could you please take a look and confirm?

@AngeloFilaseta
Copy link
Contributor

I'll take a look in a few minutes

Copy link
Contributor

mergify bot commented Mar 4, 2024

Hi @ItsTiz! 👋
This pull request has conflicts 😖
Could you fix it? 🔧
Thank you! 🙏

@ItsTiz
Copy link
Author

ItsTiz commented Mar 6, 2024

I have solved quite a few dependencies problems related to the kspCommonMainKotlinMetadata task within the building checks. Each time I solve one another pops up with the same issue. I have a feeling that these problems could be related to something bigger. I don't even know what this task is all about. @AngeloFilaseta I would much appreciate an opinion of yours, whenever you have time to look at it. Thanks.

@AngeloFilaseta
Copy link
Contributor

Lmao, sorry, I literally forgot. I'm going to investigate this afternoon (for real)

Copy link

codecov bot commented Mar 11, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 0.00%. Comparing base (6ee3007) to head (7ad6919).
Report is 226 commits behind head on master.

Additional details and impacted files
@@          Coverage Diff           @@
##           master   #3136   +/-   ##
======================================
  Coverage    0.00%   0.00%           
======================================
  Files           3       2    -1     
  Lines         115      66   -49     
  Branches        5       1    -4     
======================================
+ Misses        115      66   -49     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Copy link
Contributor

mergify bot commented Apr 15, 2024

Hi @ItsTiz! 👋
This pull request has conflicts 😖
Could you fix it? 🔧
Thank you! 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants