<p align="center"><img src="https://www.giandonatoinverso.it/qrcode/dist/img/DynamicQRCode_Original.png"></p>

**PHP Dynamic Qr code** is a script that allows the generation and saving of dynamic and static QR codes. It has a clean, responsive, and user-friendly design. It is based on [AdminLte](https://adminlte.io/), the "Best open source admin dashboard & control panel theme. Built on top of Bootstrap" and [Core PHP Admin Panel](https://github.com/chetans9/core-php-admin-panel), a simple Admin Panel written in core PHP that contains an implementation of general features you might need in your website admin panel like: record management (CRUD), secure authentication, pagination, filters.

[LIVE DEMO](https://qrcode.giandonatoinverso.dev/)

username: admin

password: admin

[DOCUMENTATION](https://giandonatoinverso.it/qrcode/documentation)

# Features

- **#1 Dynamic Qr code generator on GitHub with a database to store Qr codes**
- Create unlimited Qr codes
- Docker compose support
- Control panel with 2 access levels
- Multi-account 
- Dashboard with advanced statistics on Qr codes created and on scans
- Bulk download, bulk delete
- Dynamic Qr code
    - Create, modify, and delete Qr codes
    - You can download your Qr codes when you want
    - URL shortener with redirect
    - Enable or disable the link redirect
- Static Qr code
    - Text QR Code
    - Email QR Code
    - Phone QR Code
    - Sms QR Code
    - Whatsapp QR Code
    - Skype QR Code
    - Location QR Code
    - Vcard QR Code
    - Event/calendar QR Code
    - Bookmark QR Code
    - Wifi QR Code
    - Paypal QR Code
    - Bitcoin QR Code
- Customization of Qr codes
    - 6 formats for images
    - Foreground color
    - Background color
    - 4 levels of precision
    - 10 sizes
- Responsive bootstrap-based design
- Easy to understand and expand code
- Full OOP with classes and well-documented

## What is included

- PHP files
- .sql file with sample data
- JS files
- CSS files
- Docker compose file

## Setup with docker compose
1. download docker-compose.yml file
2. Start docker stack
```bash
docker compose build --no-cache && docker compose up -d
```
3. Open your browser at http://localhost:80 and login with (username: superadmin, password: superadmin)
