Skip to content

Commit 1336c8c

Browse files
EricWittmanncescoffier
authored andcommitted
Updates to the quickjs4j blog post based on PR feedback
1 parent a244025 commit 1336c8c

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

_posts/2025-07-14-quickjs4j.adoc renamed to _posts/2025-07-15-quickjs4j.adoc

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: post
33
title: 'Introducing Quarkus quickjs4j: Seamless JavaScript Integration in Your Quarkus Applications'
4-
date: 2025-07-14
4+
date: 2025-07-15
55
tags: javascript, integration, cdi, build-time
66
synopsis: A new Quarkiverse extension that brings JavaScript execution to your Java applications with compile-time code generation and full CDI integration.
77
author: ewittman
@@ -14,7 +14,8 @@ ifdef::env-github,env-browser,env-vscode[:imagesdir: ../assets/images/posts/quic
1414
We're excited to announce the release of the Quarkus quickjs4j extension, a powerful new addition to the
1515
Quarkus ecosystem that enables seamless execution of JavaScript code within your Java applications. Built
1616
on top of the https://github.com/roastedroot/quickjs4j[quickjs4j library], this extension brings the
17-
lightweight QuickJS JavaScript engine to Quarkus with full CDI integration and compile-time optimizations.
17+
lightweight QuickJS JavaScript engine to both JVM and Native Quarkus, with full CDI integration and
18+
compile-time optimizations.
1819

1920
Whether you need to execute dynamic business logic, implement configurable rules engines, or integrate with
2021
JavaScript-based algorithms, the Quarkus quickjs4j extension provides a type-safe, performant solution that
@@ -180,7 +181,10 @@ public interface Calculator {
180181
int add(int a, int b);
181182
int multiply(int a, int b);
182183
}
184+
----
183185

186+
[source,java]
187+
----
184188
@ApplicationScoped
185189
public class CalculatorContext {
186190
public void log(String message) {
@@ -292,9 +296,15 @@ community feedback. We're actively working on:
292296

293297
- Enhanced error reporting and debugging capabilities
294298
- Performance optimizations
295-
- Additional JavaScript engine options
299+
- Configurable JavaScript engine options
296300
- Improved IDE integration and tooling
297301

302+
In particular, we have a lot of work to do in optimizing performance. There are
303+
clear tradeoffs to consider around flexibility and speed, as well as customization.
304+
The current experimental implementation takes a very conservative approach to
305+
ensure full sandboxing and thread safety. The result is a slower implementation,
306+
but one that is guaranteed to be thread safe and fully sandboxed.
307+
298308
== Getting Involved
299309

300310
The Quarkus quickjs4j extension is part of the Quarkiverse ecosystem and welcomes community
@@ -305,7 +315,9 @@ contributions. Whether you're interested in:
305315
- Sharing use cases and examples
306316
- Improving documentation
307317

308-
Visit our https://github.com/quarkiverse/quarkus-quickjs4j[GitHub repository] to get involved!
318+
Visit our https://github.com/quarkiverse/quarkus-quickjs4j[GitHub repository] to get involved.
319+
We would really love for you to try out quickjs4j in Quarkus and give us feedback. The best
320+
way to evolve the functionality is by hearing from users!
309321

310322
== Conclusion
311323

@@ -318,9 +330,9 @@ Try it out and let us know what you think! We're excited to see what the communi
318330
capability.
319331

320332
== Links and Resources
333+
If you want to learn more about QuickJS itself, or the upstream quickjs4j Java project,
334+
here are some helpful links:
321335

322336
- https://github.com/quarkiverse/quarkus-quickjs4j[Quarkus quickjs4j GitHub Repository]
323337
- https://github.com/roastedroot/quickjs4j[quickjs4j Library]
324338
- https://bellard.org/quickjs/[QuickJS JavaScript Engine]
325-
- https://quarkus.io/extensions/[Quarkus Extensions]
326-
- https://github.com/quarkiverse[Quarkiverse Hub]

0 commit comments

Comments
 (0)