Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
245 commits
Select commit Hold shift + click to select a range
8e7f891
WIP: feat: Initial commit allowing compiling app on a single binary !
RoiArthurB Feb 5, 2026
70af1a8
feat: Bump Node to 24 + Ensure Vite is properly served from backend
RoiArthurB Feb 5, 2026
3d42b7d
fixed incorrectly commented function connectGama in the Controller
GuillaumeLeroy34 Feb 5, 2026
e08eca5
feat: Compile for MacOS too
RoiArthurB Feb 5, 2026
1d6ff1d
feat: Add compilation in Github Action
RoiArthurB Feb 5, 2026
5db7adc
fixup! feat: Add compilation in Github Action
RoiArthurB Feb 5, 2026
dbc8cfe
chore: Remove unused `caxa` package
RoiArthurB Feb 5, 2026
8212c83
fix: Fix path to compiled binary in CI workflow
RoiArthurB Feb 5, 2026
c78bef8
chore: Make CI builds artifact per OS
RoiArthurB Feb 5, 2026
0305737
chore: Better GHA logging
RoiArthurB Feb 5, 2026
2c2d0f0
chore: Explicitly add missing `express` dependency for compilation
RoiArthurB Feb 5, 2026
51e2e3c
chore: Clean-up backend
RoiArthurB Feb 5, 2026
6271592
fix: Remove testing ldid util in GHA
RoiArthurB Feb 5, 2026
928b37a
Merge branch 'main' into dev
GuillaumeLeroy34 Feb 6, 2026
a358ab0
updated package.json for use with eslint (recently updated it)
GuillaumeLeroy34 Feb 6, 2026
27d46ed
added eslint config in the gitignore
GuillaumeLeroy34 Feb 6, 2026
03c4abd
Refactoring: linted files, fixing "any" declarations where the cases …
GuillaumeLeroy34 Feb 6, 2026
4911115
added typing to SimulationList's props
GuillaumeLeroy34 Feb 9, 2026
a95d618
fixed splashscreens of the simulations not working, now, instead of s…
GuillaumeLeroy34 Feb 9, 2026
89d70f9
improved typing, removed unecessary imports from logtape
GuillaumeLeroy34 Feb 9, 2026
d2d5bd2
Changed Purple display navigation button for clarity
GuillaumeLeroy34 Feb 9, 2026
89ba42c
Fixed link to streaming button leading to wrong VR streaming page
GuillaumeLeroy34 Feb 9, 2026
3272e22
added VR screens button to the main page to avoid having to type the …
GuillaumeLeroy34 Feb 9, 2026
2de8f09
Fixed downward arrow being wrongfully displayed in a flex, causing it…
GuillaumeLeroy34 Feb 10, 2026
33e92a5
Merge branch 'main' into dev
RoiArthurB Feb 11, 2026
225c3e1
chore: Clean class Model.ts
RoiArthurB Feb 11, 2026
8a630df
fix: Correct GAMA double launching simulation
RoiArthurB Feb 11, 2026
a98e1f1
Merge remote-tracking branch 'origin/single-binary-application' into dev
RoiArthurB Feb 11, 2026
da45172
fix: Ensure updated local apt cache before installing qemu
RoiArthurB Feb 11, 2026
53906b6
fix: Do not send double config stream info on new client
RoiArthurB Feb 11, 2026
cbbb7dd
fix: Automatically recall DeviceFinder to reconnect when a headset di…
RoiArthurB Feb 11, 2026
1c6d105
Fixed: issue #112 : system now also takes into account the location o…
GuillaumeLeroy34 Feb 12, 2026
c3f0ca5
Merge branch 'dev' of https://github.com/project-SIMPLE/simple.webpla…
GuillaumeLeroy34 Feb 12, 2026
a156d95
chore: Properly store constants in Constants core file
RoiArthurB Feb 12, 2026
344ee54
fix: Switch back `sendMessageByWs` taking `any` message
RoiArthurB Feb 12, 2026
c99be8e
fix: Model class use absolute gaml file path
RoiArthurB Feb 12, 2026
8a63a36
fix: Refactoring of the ModelManager
RoiArthurB Feb 12, 2026
dde36d4
fix: Set active model from monitor by index
RoiArthurB Feb 12, 2026
040a405
Revert "Fixed: issue #112 : system now also takes into account the lo…
RoiArthurB Feb 13, 2026
397e1f8
Merge remote-tracking branch 'origin/proper-fix-issue-112' into dev
RoiArthurB Feb 13, 2026
3e267e6
fix: Fix wrongly merged files
RoiArthurB Feb 13, 2026
2b77ebe
Removed unused imports
GuillaumeLeroy34 Feb 19, 2026
8a3f0a7
commented unused feature that would allow to change the display type …
GuillaumeLeroy34 Feb 19, 2026
9a4ab97
Fixed logger incorrectly logging the error instead of it's message at…
GuillaumeLeroy34 Feb 19, 2026
4f2da10
removed unused test page
GuillaumeLeroy34 Feb 19, 2026
d6c1161
correctly typed index, previous "type" was int instead of number
GuillaumeLeroy34 Feb 19, 2026
086c09e
removed unused import
GuillaumeLeroy34 Feb 19, 2026
fba500b
removed unused websocket for gama system
GuillaumeLeroy34 Feb 19, 2026
3c3dfad
changed the type of message back to any from a string
GuillaumeLeroy34 Feb 19, 2026
897f3d9
retyped from int to number
GuillaumeLeroy34 Feb 19, 2026
a192a0f
fixed typo
GuillaumeLeroy34 Feb 19, 2026
a3feda4
used proper template syntax
GuillaumeLeroy34 Feb 19, 2026
83f45c9
allowed subprojectsList to be empty, as initialization is asynchronou…
GuillaumeLeroy34 Feb 19, 2026
a34ad2b
Moved logger definition in proper scope
GuillaumeLeroy34 Feb 19, 2026
6da9f3c
removed unnecessary @ts-expect-error
GuillaumeLeroy34 Feb 19, 2026
62a1025
added expect error, error is invalid
GuillaumeLeroy34 Feb 19, 2026
156801f
reformated
GuillaumeLeroy34 Feb 19, 2026
fe648aa
removed / fixed unused imports
GuillaumeLeroy34 Feb 19, 2026
95f1164
implemented logger in this component, added a if else block for tailw…
GuillaumeLeroy34 Feb 19, 2026
9711f37
added optionnal property to tailwindcanvas dim
GuillaumeLeroy34 Feb 20, 2026
d9d3c9d
Removed "streamplayerscreenControl" component, as it is currently unu…
GuillaumeLeroy34 Feb 20, 2026
a3a9a26
fixed wrong declaration of logger
GuillaumeLeroy34 Feb 20, 2026
aef2665
added ternary operator, checking if selectadPlayer is not undefined b…
GuillaumeLeroy34 Feb 20, 2026
3f0d3f8
fixed syntax highlighting not working properly, updated eslint depend…
GuillaumeLeroy34 Feb 20, 2026
4c291f6
updated package and package.lock
GuillaumeLeroy34 Feb 20, 2026
f359aaf
added expect error on a value that was identified as unused, but was …
GuillaumeLeroy34 Feb 20, 2026
ac9fe0c
added "entries" property of type array of simulation for proper typin…
GuillaumeLeroy34 Feb 20, 2026
7099bb7
added comments on 2 potentially obscure functions
GuillaumeLeroy34 Feb 20, 2026
f708a4f
changed how subProjectsList is implemented: instead of using [array] …
GuillaumeLeroy34 Feb 20, 2026
e9f2db2
created an error object to properly display an error message in the c…
GuillaumeLeroy34 Feb 20, 2026
1e7b2c6
removed unused "setIdentifier" from the useSearchParams() function
GuillaumeLeroy34 Feb 20, 2026
07e9729
removed unused screen display type functionnality, removed different …
GuillaumeLeroy34 Feb 20, 2026
d7a9f77
added bracket for correct template syntax
GuillaumeLeroy34 Feb 20, 2026
6f57254
added brackets for correct use of logger
GuillaumeLeroy34 Feb 20, 2026
138183c
Simplified the subprojectList: now use an effect hook to update the s…
GuillaumeLeroy34 Feb 23, 2026
c976ed9
converted style attribute containing css to tailwind utilities to red…
GuillaumeLeroy34 Feb 23, 2026
73687a7
Uniformized spacing
GuillaumeLeroy34 Feb 23, 2026
d5a935f
Removed unused commented code
GuillaumeLeroy34 Feb 23, 2026
ee0b1e6
changed to using and operator instead of the ternary operator
GuillaumeLeroy34 Feb 23, 2026
1f80158
added an else clause to fix the issue where the simulation list did n…
GuillaumeLeroy34 Feb 23, 2026
86d5407
removed 'style attribute', and replaced it by an image that is easie…
GuillaumeLeroy34 Feb 23, 2026
b64fd60
removed uncessary ternary operator, and replaced them by an and opera…
GuillaumeLeroy34 Feb 23, 2026
48a13cd
removed eslint exception
GuillaumeLeroy34 Feb 23, 2026
2cf61ff
removed unsued code adding text in the buttons of the simulation flow…
GuillaumeLeroy34 Feb 23, 2026
848da73
removed weird tailwind class
GuillaumeLeroy34 Feb 23, 2026
997896f
added template in the string in the info logs
GuillaumeLeroy34 Feb 23, 2026
18f836b
removed package, package-lock and eslint.config from the .gitignore
GuillaumeLeroy34 Feb 23, 2026
9953431
removed commented useless code and empty space at the top of the comp…
GuillaumeLeroy34 Feb 23, 2026
180b7e4
removed Simulation interface from SelectorSimulation, and replaced it…
GuillaumeLeroy34 Feb 24, 2026
ccbe08f
since we now use properly defined types, we can check the type of the…
GuillaumeLeroy34 Feb 24, 2026
9969041
defined a constant "catalog_item" in the scope of the if to tell ts t…
GuillaumeLeroy34 Feb 24, 2026
3405b49
removed weird conditionnal check that was used to see if an item cont…
GuillaumeLeroy34 Feb 24, 2026
dd01c9f
removed unecessary check, as subprojectlist is always initialized as …
GuillaumeLeroy34 Feb 24, 2026
b8c351a
removed the interface Simulation, implemented the interface VU_CATALO…
GuillaumeLeroy34 Feb 24, 2026
c6ee96d
changed the log to use the error message instead of directly dumping …
GuillaumeLeroy34 Feb 24, 2026
d82be01
removed Simulation from the constants file.
GuillaumeLeroy34 Feb 24, 2026
4c4b79b
removed Simulation and replaced it with VU_MODEL_SETTING_JSON | VU_CA…
GuillaumeLeroy34 Feb 24, 2026
ca2805f
removed useless header from the streaming page
GuillaumeLeroy34 Feb 24, 2026
65d644e
Fixed logger having an incorrect category attribute, and removed unec…
GuillaumeLeroy34 Feb 26, 2026
e7ea2fe
fix: Better catch if application is running in packaged mode or not
RoiArthurB Feb 26, 2026
834ce63
fix: Ensure the application doesn't randomly crash if no learning pac…
RoiArthurB Feb 26, 2026
0b54c61
added comment explaining the eslint config file, removed deprecated .…
GuillaumeLeroy34 Feb 27, 2026
0a17fe8
chore: Bump uWebSocket version
RoiArthurB Feb 27, 2026
7e1e467
Merge pull request #119 from project-SIMPLE/eslint_check
RoiArthurB Feb 27, 2026
7bf6861
Merge branch 'dev' of github.com:project-SIMPLE/simple.webplatform in…
RoiArthurB Feb 27, 2026
e732d06
chore: Bump dependencies tools
RoiArthurB Mar 3, 2026
7174a9a
fixup: Increase Scrcpy WS stability
RoiArthurB Mar 3, 2026
9e1d4dd
fixup! fixup: Increase Scrcpy WS stability - Tweak down websocket par…
RoiArthurB Mar 3, 2026
90d90b1
fix: Prevent initial black screen on scrcpy streams
RoiArthurB Mar 3, 2026
0a73a7f
refactor: Replace shared video WebSocket with per-device sockets to f…
RoiArthurB Mar 5, 2026
d4e5f8d
fix: Resolve codec-switch crash and stale canvas on h265→h264 fallback
RoiArthurB Mar 5, 2026
63b37e5
fix: Fix Firefox h264 WebCodecs failure and stream_available race on …
RoiArthurB Mar 6, 2026
0cacc6e
chore: Cleanup refactored branch
RoiArthurB Mar 6, 2026
9f48425
chore: Fix code smells from SonarQube
RoiArthurB Mar 6, 2026
3d73d6e
Merge pull request #125 from project-SIMPLE/scrcpy-multi-ws
RoiArthurB Mar 6, 2026
b5b3455
added experimental png image in the public/background folder
GuillaumeLeroy34 Mar 9, 2026
614aa12
fix: Always restart scrcpy if the stream is ending
RoiArthurB Mar 9, 2026
6650276
fix: Fix dropped first config packet and stale closure in VideoStream…
RoiArthurB Mar 9, 2026
5b96d0d
refactor: Simplify codec logic
RoiArthurB Mar 9, 2026
e5155c0
fix: Fix black screen
RoiArthurB Mar 9, 2026
f335a2b
fix: Catch ADB connection failures
RoiArthurB Mar 9, 2026
552cc73
Added new illustrations made by Clémence
GuillaumeLeroy34 Mar 13, 2026
90e5a43
Removed mini Navigation and navigation components, as they were only …
GuillaumeLeroy34 Mar 13, 2026
c9c3ea9
added IMAGE_SOURCE_FOLDER to the vite.config.ts and in the ENV file. …
GuillaumeLeroy34 Mar 13, 2026
43529a0
added a css rule to the index css to add the new background to all pages
GuillaumeLeroy34 Mar 13, 2026
8300ce6
Changed logos in the footer to use the new ones
GuillaumeLeroy34 Mar 13, 2026
b05ae60
changed the language selector to use the new images, changed button t…
GuillaumeLeroy34 Mar 13, 2026
9660dc3
removed unused mininav parameter, this attribute does not exist anymore
GuillaumeLeroy34 Mar 13, 2026
522140c
Added new graphics to the page
GuillaumeLeroy34 Mar 13, 2026
bad7670
fix: Improve AdbManager robustness and reconnect logic
RoiArthurB Mar 9, 2026
c2a72d6
fix: Ensure streams always resets both if codec or ratio has to change
RoiArthurB Mar 13, 2026
3448196
chore: Refactoring ScrcpyServer
RoiArthurB Mar 13, 2026
e95e1fe
fixup! chore: Refactoring ScrcpyServer - Better use of websocket serv…
RoiArthurB Mar 13, 2026
58e8d69
Added version 2 of the redesign
GuillaumeLeroy34 Mar 13, 2026
1a76181
Temporarily changed the url before finding a more permanent solution
GuillaumeLeroy34 Mar 13, 2026
01087ef
adjusted the padding of the header a little to make it feel less cramped
GuillaumeLeroy34 Mar 13, 2026
7de5fef
fixed the src using public folder, actually used all 4 selection butt…
GuillaumeLeroy34 Mar 13, 2026
33afff8
changed the structure, mostly to remove the blue container that is no…
GuillaumeLeroy34 Mar 13, 2026
6daf5ab
replaced the placeholder headset by a transparent orange one of the n…
GuillaumeLeroy34 Mar 13, 2026
ebe89fa
added a random function that picks a frame at random
GuillaumeLeroy34 Mar 13, 2026
4d1a9fa
replaced instances of /public/images by simply /images
GuillaumeLeroy34 Mar 13, 2026
82a6f9f
fix: Ping device with DeviceFinder before trying to scan port
RoiArthurB Mar 16, 2026
dc27e36
fix: Catch when a device switch to offline
RoiArthurB Mar 16, 2026
7324e76
feat: Sanitize headsets on boot and before every call
RoiArthurB Mar 16, 2026
5b60aef
fix: Properly handle stream disconnection
RoiArthurB Mar 16, 2026
3a4faa5
fix: Also catch full ADB disconnect
RoiArthurB Mar 16, 2026
5cdaca9
removed numbers from the name of the headsets colors to make them eas…
GuillaumeLeroy34 Mar 16, 2026
7f51121
added new visual elements to the headset streaming page
GuillaumeLeroy34 Mar 16, 2026
caf72b7
removed numbers from the headsets
GuillaumeLeroy34 Mar 16, 2026
d5b8216
removed number from the throbber
GuillaumeLeroy34 Mar 16, 2026
78e8093
added extra images for folders elements
GuillaumeLeroy34 Mar 16, 2026
b27c9ec
removed the .body rule from the index css, and instead transfered the…
GuillaumeLeroy34 Mar 16, 2026
d9e2f41
removed unused folder constants in the Footer, reverted back to old l…
GuillaumeLeroy34 Mar 17, 2026
c64aec8
reverted back to old logos, and adjusted their layout in the footer
GuillaumeLeroy34 Mar 17, 2026
86ee9ae
adjusted the size and placement of the Language selection icon
GuillaumeLeroy34 Mar 17, 2026
ac8267f
Move WebCodecs decoder to Web Worker for better scrcpy video streamin…
RoiArthurB Mar 17, 2026
b67654b
added svg images
GuillaumeLeroy34 Mar 17, 2026
ba4934c
chore: Better handle Gamaless
RoiArthurB Mar 17, 2026
bdb066d
Merge pull request #131 from project-SIMPLE/clean-gamaless
RoiArthurB Mar 17, 2026
a73cb36
renamed footer and header background images to follow english convention
GuillaumeLeroy34 Mar 18, 2026
68f3432
cropped the simple logo to remove empty space to make size and layout…
GuillaumeLeroy34 Mar 18, 2026
90e31b8
added "overflow-hidden" tailwind class that visually crops everything…
GuillaumeLeroy34 Mar 18, 2026
3970e35
manually adjusted the layout of the footer to be more harmonious
GuillaumeLeroy34 Mar 18, 2026
0e4fe6e
adjusted the header for a consistent margin and layout of the elements
GuillaumeLeroy34 Mar 18, 2026
49d1d56
adjusted the layout of the selector simulation, brought the display b…
GuillaumeLeroy34 Mar 18, 2026
7309b9f
changed old ugly "downward arrow" icon to a nicer folder image to sig…
GuillaumeLeroy34 Mar 18, 2026
3d62911
removed alternative display buttons
GuillaumeLeroy34 Mar 19, 2026
c43dc35
removed usage of "/public/images" to access the images, replaced by /…
GuillaumeLeroy34 Mar 19, 2026
7b48e24
added padding to the language selector so that the V1's button are no…
GuillaumeLeroy34 Mar 19, 2026
14995b9
changed the interface to implement the new graphical elements in the …
GuillaumeLeroy34 Mar 19, 2026
a1ad77d
removed unused import
GuillaumeLeroy34 Mar 19, 2026
126a7f1
adjusted layout of the VR headset
GuillaumeLeroy34 Mar 19, 2026
ea25bea
changed the colors of the headsets in the constants file, may change …
GuillaumeLeroy34 Mar 19, 2026
481711f
Merge branch 'dev' of https://github.com/project-SIMPLE/simple.webpla…
GuillaumeLeroy34 Mar 19, 2026
4c7db78
fixup! Merge pull request #131 from project-SIMPLE/clean-gamaless
RoiArthurB Mar 19, 2026
7bca060
Merge branch 'dev' of github.com:project-SIMPLE/simple.webplatform in…
RoiArthurB Mar 19, 2026
c88eeb3
Merge branch 'dev' into visual_rework
GuillaumeLeroy34 Mar 19, 2026
2965231
fixed navigation button from the merge using the old system
GuillaumeLeroy34 Mar 19, 2026
4e962ea
added an AND operator in the templates of the header and the footer t…
GuillaumeLeroy34 Mar 19, 2026
f4bbfe9
changed default headset to use the new orange one by default
GuillaumeLeroy34 Mar 19, 2026
8f9e4dc
removed old headsets
GuillaumeLeroy34 Mar 19, 2026
154a027
removed unused language icon
GuillaumeLeroy34 Mar 19, 2026
ae2b78f
removed blue background from the gamaless display option in the selec…
GuillaumeLeroy34 Mar 19, 2026
72726b4
implemented colored frames for streams
GuillaumeLeroy34 Mar 19, 2026
892ca76
fixed footer having incorrect margin values
GuillaumeLeroy34 Mar 19, 2026
3b120ef
fixed container not occupying the whole screen on mac OS
GuillaumeLeroy34 Mar 19, 2026
0efef5a
fixed button not working
GuillaumeLeroy34 Mar 19, 2026
4fb8f12
adjusted the constants so that the frames are correctly displayed
GuillaumeLeroy34 Mar 20, 2026
5fda8c9
changed the way colors are handled in the VRHeadset component, since …
GuillaumeLeroy34 Mar 20, 2026
2a53cc8
adjusted the colors in the constant file to be more consistent
GuillaumeLeroy34 Mar 20, 2026
57b915b
fix: Increase scrcpy to default 8Mbps
RoiArthurB Mar 20, 2026
c51e32a
fix: Sanitize ip addresses given
RoiArthurB Mar 20, 2026
d7de142
added PNG frames because the SVG ones cannot be stretched
GuillaumeLeroy34 Mar 24, 2026
68cdd93
changed how the stream frames are rendered, now they are in a div tha…
GuillaumeLeroy34 Mar 24, 2026
207c3df
added z parameter so the display button is always rendered above the …
GuillaumeLeroy34 Mar 24, 2026
fd5a011
feat: Initial work on UPS control
RoiArthurB Mar 24, 2026
dac7e8f
fixed typo preventing width parameter from being correctly applied to…
GuillaumeLeroy34 Mar 24, 2026
17cba8e
feat: add shutdownAllHeadsets to AdbManager
RoiArthurB Mar 24, 2026
fe0af1c
feat: add UpsManager with polling, reconnection, and shutdown
RoiArthurB Mar 24, 2026
91049e1
feat: integrate UpsManager and 3-hour session shutdown timer
RoiArthurB Mar 24, 2026
6181611
fixed stop button not being displayed due to typo in the img resource…
GuillaumeLeroy34 Mar 24, 2026
944e3b2
Merge pull request #135 from project-SIMPLE/ups-control
RoiArthurB Mar 25, 2026
74b251f
feat: Add mouldybread/adb-auto-enable v0.2.6
RoiArthurB Mar 25, 2026
ef53992
chore: Add @yume-chan/android-bin
RoiArthurB Mar 25, 2026
8932f2f
feat: Add `installApk()` function
RoiArthurB Mar 25, 2026
d0fa3c8
feat: Add checkRequiredApps() function
RoiArthurB Mar 25, 2026
f960ddc
chore: Refactoring Adb to keep separated logics
RoiArthurB Mar 25, 2026
86fd2c7
fix: fallback to MessagePort when ReadableStream transfer is unsupported
google-labs-jules[bot] Mar 26, 2026
3c7c19b
added black headset control interface and stream frames, changed N°10…
GuillaumeLeroy34 Mar 27, 2026
1d95879
fix: Increase ADB timeout
RoiArthurB Mar 27, 2026
4b0cf4e
feat: Add tdg.oculuswirelessadb v1.3
RoiArthurB Mar 27, 2026
d2a6225
feat: Auto install Oculus ADB as well as Auto-ADB
RoiArthurB Mar 27, 2026
b7325a6
feat: Add self-update and shell settings support to HeadsetSetup
RoiArthurB Mar 27, 2026
cdc15d2
updated example .env file
GuillaumeLeroy34 Mar 31, 2026
71bfd45
removed unused svg streaming frames
GuillaumeLeroy34 Mar 31, 2026
ad80d58
Updated V1 images to cleaner versions made by Clémence
GuillaumeLeroy34 Mar 31, 2026
2bf620c
Adjusted footer to use dynamic units instead of pixels
GuillaumeLeroy34 Mar 31, 2026
8cc2100
adjusted header to use dynamic units
GuillaumeLeroy34 Mar 31, 2026
8372313
added animations to most buttons in the selectorSimulation, simulatio…
GuillaumeLeroy34 Mar 31, 2026
38d2771
Adjusted language selector layout to accomodate the new exit button b…
GuillaumeLeroy34 Mar 31, 2026
fd81682
Ajout de polices d'écriture plus sympas
GuillaumeLeroy34 Mar 31, 2026
c390003
avec les polices c'est mieux
GuillaumeLeroy34 Mar 31, 2026
ee5c0a7
Merge pull request #137 from project-SIMPLE/fix-scrcpy-stream-safari-…
RoiArthurB Mar 31, 2026
27a27ab
fixup! feat: Add self-update and shell settings support to HeadsetSetup
RoiArthurB Mar 31, 2026
c0f2550
Updated streaming frames with the flowers in the bottom right corner
GuillaumeLeroy34 Mar 31, 2026
638b764
adjusted the SimulationList component a bit, implemented the new font…
GuillaumeLeroy34 Mar 31, 2026
8a6f552
adjusted the size of the display button in the main page
GuillaumeLeroy34 Mar 31, 2026
c39a46c
feat: Manipulate OVR_PREFS and set power settings to 4 hours
RoiArthurB Mar 31, 2026
1dabb35
feat: Add system/secure settings, OVR prefs and proximity broadcast
RoiArthurB Mar 31, 2026
5bcbccc
updated color of headset 104 to use purple instead of pink in constan…
GuillaumeLeroy34 Apr 6, 2026
b5760dd
removed all occurences of the folder environment variable, made V1 th…
GuillaumeLeroy34 Apr 7, 2026
2618ded
removed IMAGE_SOURCE_FOLDER from the .env.example file
GuillaumeLeroy34 Apr 7, 2026
4c4f59f
removed unused V2 of the graphics of the web platform
GuillaumeLeroy34 Apr 7, 2026
aeeff5e
Merge branch 'dev' into visual_rework
GuillaumeLeroy34 Apr 7, 2026
91fbdf9
removed background from old logo, kept it in case we need to revert it
GuillaumeLeroy34 Apr 9, 2026
2ea94f8
updated the main background, as well as the "home button"
GuillaumeLeroy34 Apr 9, 2026
8cc777c
removed unnecessary "public/" in the url of the new font face in the …
GuillaumeLeroy34 Apr 9, 2026
5b46579
adjusted the margins on the footer to have the same as the header
GuillaumeLeroy34 Apr 9, 2026
3b5e21a
centered the text of all the buttons
GuillaumeLeroy34 Apr 9, 2026
c24757e
adjusted the size of all buttons to be consistent with the language s…
GuillaumeLeroy34 Apr 9, 2026
3ceaacf
changed the back button of the subprojects feature to use the back ar…
GuillaumeLeroy34 Apr 9, 2026
a6110b6
chore: Cleanup project
RoiArthurB Apr 15, 2026
0b83e82
Merge pull request #143 from project-SIMPLE/visual_rework
RoiArthurB Apr 15, 2026
0cd3450
fix: detect device -> offline transitions early in AdbManager disconn…
RoiArthurB Apr 15, 2026
1077985
Merge branch 'main' into dev
RoiArthurB Apr 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,3 @@ LEARNING_PACKAGE_PATH="./learning-packages"
# Default to `false`
#AGGRESSIVE_DISCONNECT=false


18 changes: 0 additions & 18 deletions .eslintrc.cjs

This file was deleted.

61 changes: 61 additions & 0 deletions .github/workflows/build-ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: "Testing build on commit"

on:
push:

jobs:
compilation:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 24

- name: Get utils
run: |
sudo apt-get update
sudo apt-get install -y qemu-user-binfmt

- uses: MOZGIII/install-ldid-action@v1
with:
tag: v2.1.5-procursus7

- name: Install npm modules
run: npm i

- name: Package application
run: npm run build:executable

# Publish

- name: Export release for Linux
uses: actions/upload-artifact@v4
with:
name: linux-compiled-archive
if-no-files-found: error
compression-level: 0
overwrite: true
path: |
${{ github.workspace }}/bin/simple-linux*

- name: Export release for Windows
uses: actions/upload-artifact@v4
with:
name: windows-compiled-archive
if-no-files-found: error
compression-level: 0
overwrite: true
path: |
${{ github.workspace }}/bin/simple-win*

- name: Export release for MacOS
uses: actions/upload-artifact@v4
with:
name: macos-compiled-archive
if-no-files-found: error
compression-level: 0
overwrite: true
path: |
${{ github.workspace }}/bin/simple-macos*
51 changes: 51 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: "Releasing with compressed binary"

on:
workflow_call:

jobs:
compilation:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 24

- name: Get utils
run: |
sudo apt-get update
sudo apt-get install -y qemu-user-binfmt

- uses: MOZGIII/install-ldid-action@v1
with:
tag: v2.1.5-procursus7

- name: Install npm modules
run: npm i

- name: Get release metadata
id: setup_new_release_data
run: |
date=$(date +'%d/%m/%y %R')
echo "date=$date" >> "$GITHUB_OUTPUT"

- name: Package application
run: npm run build:executable-compressed

# Publish

- name: Publish alpha to Github
uses: softprops/action-gh-release@v2
with:
prerelease: true
make_latest: false
tag_name: "alpha"
name: Alpha Version
body: |
Alpha release of the SIMPLE webplatform. Please test and report issues.
Lastly updated on $(date +'%d/%m/%y %R').
generate_release_notes: true
files: ${{ github.workspace }}/bin/*
fail_on_unmatched_files: true
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@ dist-ssr
package-lock.json
errorLog.log*
learning-packages/ACROSS-Lab QuangBinhProject MIAT-version Gama/

# Compilation related
/bin*
dist
dist-api
36 changes: 36 additions & 0 deletions BUILD_EXECUTABLE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
### Building the Executable

To package this application into a single Linux executable, follow these steps:

1. **Install dependencies**:
```bash
npm install
```

2. **Build the executable**:
```bash
npm run build:executable
```
This command will:
- Build the Vite frontend into the `dist` folder.
- Bundle the Node.js backend into `dist-api/index.cjs` using Vite (handling TypeScript and ESM conversion).
- Package everything into a single binary located in the `bin` directory using `@yao-pkg/pkg`.

### Distribution

The generated executables are located in the `bin/` directory.

**Requirements for running**:
- **Operating System**: Linux (x64) or Windows (x64).
- **External Configuration**: The application expects a `.env` file to be present in the **same directory** as the executable.
- **Dependencies**: No Node.js installation is required. However, the application still relies on `adb` being installed on the host system if Android device management is needed.

### Technical Details

- **Packaging Tool**: `@yao-pkg/pkg` (a maintained fork of `pkg` that supports Node >=20).
- **Backend Bundling**: Vite is used to bundle the backend. This ensures that:
- All TypeScript files and ESM imports are resolved.
- Dependencies are bundled into a single file to avoid issues with subpath imports or complex `node_modules` structures in the packaged environment.
- Native modules (like `uWebSockets.js`) are kept external and included as assets.
- **Static Files**: The Vite-built frontend is bundled into the executable and served via an Express server integrated into the backend when running in packaged mode.
- **Environment Variables**: `dotenv` is configured to look for the `.env` file in the directory of the executable (`process.execPath`).
12 changes: 12 additions & 0 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// new configuration file for eslint, the old .cjs was deprecated
import js from "@eslint/js";
import globals from "globals";
import tseslint from "typescript-eslint";
import pluginReact from "eslint-plugin-react";
import { defineConfig } from "eslint/config";

export default defineConfig([
{ files: ["**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"], plugins: { js }, extends: ["js/recommended"], languageOptions: { globals: {...globals.browser, ...globals.node} } },
tseslint.configs.recommended,
pluginReact.configs.flat.recommended,
]);
5 changes: 5 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export default tseslint.config({
rules: {
"@typescript-eslint/no-explicit-any": "error"
}
});
13 changes: 13 additions & 0 deletions eslint.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import js from "@eslint/js";
import globals from "globals";
import tseslint from "typescript-eslint";
import pluginReact from "eslint-plugin-react";
import json from "@eslint/json";
import { defineConfig } from "eslint/config";

export default defineConfig([
{ files: ["**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"], plugins: { js }, extends: ["js/recommended"], languageOptions: { globals: {...globals.browser, ...globals.node} } },
tseslint.configs.recommended,
pluginReact.configs.flat.recommended,
{ files: ["**/*.json"], plugins: { json }, language: "json/json", extends: ["json/recommended"] },
]);
Loading
Loading