QuickQR is a lightweight, modern web application that instantly generates QR codes through both a clean web interface and a flexible REST API. Built with Quarkus, Kotlin, and Gradle (Kotlin DSL), the app emphasizes speed and simplicity. The frontend is rendered using the Qute templating engine, offering a polished HTML interface, while the REST API supports seamless integration with other services.
Whether you're sharing links, contact details, or custom text, QuickQR offers a seamless experience with clean design and developer-friendly architecture.
The tech stack of this project consists of the following main technologies/frameworks/tools:
Based on https://www.nayuki.io/page/qr-code-generator-library and inspired by https://myfear.substack.com/p/how-to-generate-qr-codes-in-quarkus
Useful documentation for Quarkus-Kotlin-Gradle with Kotlin DSL stack:
- Quarkus integration with Kotlin
- Quarkus integration with Gradle & Kotlin DSL
- Kotlin integration with Rest Assured testing library
Java 21
./gradlew quarkusDev
Access the web page in your browser by entering the url
http://localhost:8080/qr-page
- Home page: enter text and press Enter or click the button
- QR code page: Press the "Download" button to receive the QR code in jpg file format
- About page: accessible by clicking the blinking red light in upper right corner
or perform a request in the exposed REST endpoint using the following sample in order to receive the QR code in SVG file format:
curl --request GET --url 'http://localhost:8080/qr/download/svg?text=sample-text'
Distributed under the MIT License. See LICENSE.md for more information.
You can reach me at:
- Personal website: https://www.dfotiou.gr
- StackOverflow profile: https://stackoverflow.com/users/11680294/fotiou-d
- Linkedin profile: https://www.linkedin.com/in/dimitris-fotiou/
- Email: dfotiou.tech@gmail.com