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

Add Quarkus Insights Lab MVC on Quarkus Web guide #43205

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
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
9 changes: 3 additions & 6 deletions docs/src/main/asciidoc/web.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -155,9 +155,11 @@
}
----

For a thorough introduction to Quarkus Web, check out https://www.youtube.com/watch?v=JNmHNSmK180[Quarkus Insights Episode #178]. In it, Andy Damevin and Matheus Cruz provide a hands-on demonstration of creating a CMS.

Check warning on line 158 in docs/src/main/asciidoc/web.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.Spelling] Use correct American English spelling. Did you really mean 'Damevin'? Raw Output: {"message": "[Quarkus.Spelling] Use correct American English spelling. Did you really mean 'Damevin'?", "location": {"path": "docs/src/main/asciidoc/web.adoc", "range": {"start": {"line": 158, "column": 143}}}, "severity": "WARNING"}

== Single Page Applications

Quarkus provides very solid tools for creating or integrating Single Page Applications to Quarkus (React, Angular, Vue, …), here are 3 options:

Check warning on line 162 in docs/src/main/asciidoc/web.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.Spelling] Use correct American English spelling. Did you really mean 'Vue'? Raw Output: {"message": "[Quarkus.Spelling] Use correct American English spelling. Did you really mean 'Vue'?", "location": {"path": "docs/src/main/asciidoc/web.adoc", "range": {"start": {"line": 162, "column": 116}}}, "severity": "WARNING"}

Check warning on line 162 in docs/src/main/asciidoc/web.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.Ellipses] Avoid the ellipsis (...) except to indicate omitted words. Insert a space before and after an ellipsis. Raw Output: {"message": "[Quarkus.Ellipses] Avoid the ellipsis (...) except to indicate omitted words. Insert a space before and after an ellipsis.", "location": {"path": "docs/src/main/asciidoc/web.adoc", "range": {"start": {"line": 162, "column": 121}}}, "severity": "INFO"}

* https://quarkiverse.github.io/quarkiverse-docs/quarkus-quinoa/dev/[Quarkus Quinoa] bridges your npm-compatible web application and Quarkus for both dev and prod. No need to install Node.js or configure your framework, it will detect it and use sensible defaults.
* The https://docs.quarkiverse.io/quarkus-web-bundler/dev/[Quarkus Web Bundler] is also a good approach, it is closer to the Java ecosystem and removes a lot of boilerplate and configuration, it is fast and efficient. For examples of such SPAs, see https://github.com/quarkusio/code.quarkus.io[code.quarkus.io] and https://github.com/mvnpm/mvnpm[mvnpm.org].
Expand Down Expand Up @@ -262,11 +264,6 @@
Serving a few static pages and scripts from an existing Quarkus backend is not a big overhead, so scaling the full app is usually the simplest option.
You could also split it in two services: one for the backend and one for the frontend. However, in most cases, this approach wouldn’t yield substantial benefits compared to the initial method.

If your application involves a substantial number of static resources, consider using a CDN. Both the Web Bundler and Quinoa can be configured to work seamlessly with a CDN, providing improved performance and distribution of assets.

Check warning on line 267 in docs/src/main/asciidoc/web.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.TermsSuggestions] Depending on the context, consider using 'by using' or 'that uses' rather than 'using'. Raw Output: {"message": "[Quarkus.TermsSuggestions] Depending on the context, consider using 'by using' or 'that uses' rather than 'using'.", "location": {"path": "docs/src/main/asciidoc/web.adoc", "range": {"start": {"line": 267, "column": 80}}}, "severity": "INFO"}

Check warning on line 267 in docs/src/main/asciidoc/web.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.Spelling] Use correct American English spelling. Did you really mean 'Bundler'? Raw Output: {"message": "[Quarkus.Spelling] Use correct American English spelling. Did you really mean 'Bundler'?", "location": {"path": "docs/src/main/asciidoc/web.adoc", "range": {"start": {"line": 267, "column": 107}}}, "severity": "WARNING"}

// It would be nice to have a blog article and benchmark about this topic.





// It would be nice to have a blog article and benchmark about this topic.