2022-05-30 17:50:46 +02:00
# LibreQR
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
A PHP Web interface for generating QR codes.
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
## Demo
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
A LibreQR instance is available at < https: / / qr . antopie . org > .
2019-08-13 21:17:08 +02:00
## Installation
2020-10-31 16:51:50 +01:00
### Generic
2023-07-07 22:33:10 +02:00
Just place this source code in a Web server with PHP8.0+, extensions `gd` , `mbstring` and `iconv` , and writing rights on the `css/` directory.
2020-10-31 16:51:50 +01:00
2022-03-04 01:09:24 +01:00
#### Security hardening
2022-06-03 21:09:42 +02:00
##### HTTP headers
2022-03-04 01:09:24 +01:00
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
```
2022-06-03 21:09:42 +02:00
##### PHP-FPM chroot
LibreQR can be chrooted using PHP-FPM.
2019-08-14 17:12:36 +02:00
### YunoHost
2020-10-31 16:51:50 +01:00
There is [a package ](https://code.antopie.org/miraty/qr_ynh/ ) for [YunoHost ](https://yunohost.org/ ).
For historical reasons, LibreQR is technically named `qr` in YunoHost.
2020-03-06 21:34:31 +01:00
2023-07-08 18:48:26 +02:00
You can install it from the WebAdmin or with this command:
2019-08-14 17:12:36 +02:00
```
2020-03-23 14:51:46 +01:00
sudo yunohost app install qr
2019-08-14 17:12:36 +02:00
```
2020-10-31 16:51:50 +01:00
## Themes
2019-08-13 21:17:08 +02:00
2022-03-04 01:09:24 +01:00
Themes are located in `themes/*` , the default theme is in `themes/libreqr/` .
2020-03-06 21:34:31 +01:00
2022-03-04 01:09:24 +01:00
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` ).
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
## Contribute
2020-03-23 14:51:46 +01:00
2022-06-03 21:09:42 +02:00
The public forge is < https: / / code . antopie . org / miraty / libreqr > . You can open issues and pull requests there.
### Translations
You can add your translations in `locales/<language-code>.php` .
2020-03-23 14:51:46 +01:00
## Contact
2022-06-03 21:09:42 +02:00
You can get my contact details on < https: / / miraty . antopie . org / > , feel free to use them if you want more informations about using or contributing to LibreQR.
2020-03-23 14:51:46 +01:00
2020-10-31 16:51:50 +01:00
## License
2019-08-13 21:17:08 +02:00
2022-05-30 17:50:46 +02:00
LibreQR is published under [AGPLv3+ ](https://code.antopie.org/miraty/libreqr/src/branch/main/LICENSE ). Librairies located in the `vendor` subdirectory use their own licenses.
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
LibreQR is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
LibreQR is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
2019-08-13 21:17:08 +02:00
2020-10-31 16:51:50 +01:00
You should have received a copy of the GNU Affero General Public License along with this program. If not, see < https: / / www . gnu . org / licenses / > .