Skip to content

[pull] main from VirusTotal:main#175

Merged
pull[bot] merged 2 commits intothreatcode:mainfrom
VirusTotal:main
Mar 25, 2026
Merged

[pull] main from VirusTotal:main#175
pull[bot] merged 2 commits intothreatcode:mainfrom
VirusTotal:main

Conversation

@pull
Copy link
Copy Markdown

@pull pull bot commented Mar 25, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

kevinmuoz and others added 2 commits March 25, 2026 08:39
This PR adds the initial playground/ base for YARA-X.

This follows the discussion in #592, where the idea of having an official browser playground was raised.

The scope here is intentionally small. The goal is to add the TypeScript, Lit, CSS, and Vite base for the playground, get the UI in place, and make sure it compiles cleanly. This is still a 0.0.0 version and it is not expected to work end-to-end yet.

What is included:

the initial playground UI and layout
Monaco-based editor integration
service interfaces/contracts for the engine and the language server
placeholder adapters with TODO(@kevinmuoz) markers for the follow-up integration work
Vite configuration already prepared for future GH Pages deployment
What is intentionally not included yet:

no working engine integration yet
no working language server integration yet
no GH Actions for deployment yet
The current contracts are meant to unblock the next steps once the engine side is available through #598 and once we decide how the browser language server should live. Right now, a separate package for the language server still feels like the most logical option, but that part is not fully defined yet.

I left the missing pieces explicitly marked in the code with TODO(@kevinmuoz) so they are easy to track and connect in follow-up PRs.

A couple of implementation notes:

even though the app uses Web Components and the overall build is fairly light, Monaco still adds noticeable weight to the bundle. The current load time is still really good, and I already disabled services that are not needed for the playground, but this is still something worth revisiting and optimizing later.
some components intentionally avoid Shadow DOM. That gives up one of the nice benefits of Web Components, but in practice it makes Monaco integration much smoother, especially for overlays like popups, hover widgets, and autocomplete.
I wanted to keep this PR small and focused on the playground base first, and add deployment/workflows only once the moving pieces are actually connected.

It would also be possible to check in wasm output files and get to a quick 0.0.1 sooner, but I think with a bit more work we can automate that properly and keep the setup cleaner.
…#599)

Bumps [flatted](https://github.com/WebReflection/flatted) from 3.3.3 to 3.4.2.
- [Commits](WebReflection/flatted@v3.3.3...v3.4.2)

---
updated-dependencies:
- dependency-name: flatted
  dependency-version: 3.4.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
@pull pull bot locked and limited conversation to collaborators Mar 25, 2026
@pull pull bot added the ⤵️ pull label Mar 25, 2026
@pull pull bot merged commit 5297260 into threatcode:main Mar 25, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant