- PHP 81%
- CSS 18.6%
- JavaScript 0.4%
| locales | ||
| themes | ||
| vendor | ||
| .gitignore | ||
| CHANGELOG.md | ||
| common.php | ||
| composer.json | ||
| config.inc.php | ||
| htaccess.txt | ||
| index.php | ||
| LICENSE | ||
| LICENSE.html | ||
| README.md | ||
| style.css | ||
| stylelint.config.mjs | ||
LibreQR
A PHP Web interface for generating QR codes.
Demo
A LibreQR instance is available at https://qr.antopie.org.
Installation
Generic
Place this source code in a Web server with PHP8.0+, extensions gd, mbstring and iconv, and writing rights on the css/ directory. Every request needs to be sent to index.php.
Security hardening
HTTP headers
Your HTTP server can reply the following headers:
Content-Security-Policy: default-src 'none'; img-src 'self' data:; style-src 'self'; frame-ancestors 'none'; form-action 'self';
Referrer-Policy: no-referrer
PHP-FPM chroot
LibreQR can be chrooted using PHP-FPM.
YunoHost
There is a package for YunoHost.
For historical reasons, LibreQR is technically named qr in YunoHost.
You can install it from the WebAdmin or with this command:
sudo yunohost app install qr
Themes
Themes are located in themes/*, the default theme is in themes/libreqr/.
You can customize your LibreQR instance look by changing the colors in theme.php, the logo in logo.less or the icons in icons/<size>.png (then list the sizes in theme.php).
Contribute
You can open issues and pull requests on the public forge.
Translations
Contribute on Codeberg's Weblate
You can also manually edit translations in locales/<language-code>.php.
Contact
You can get contact details for the maintainer, feel free to use them if you want more information about using or contributing to LibreQR.
License
LibreQR is published under AGPLv3+. Librairies located in the vendor subdirectory use their own compatible licenses.