OpenQR

resmi

Buat kode QR dan kelola kode QR dinamis (yang dapat diedit) dengan analitik pemindaian melalui server MCP yang dihosting (17 alat) dan REST API gratis

Apa yang bisa Anda lakukan dengan OpenQR MCP?

  • Buat kode QR statis — Minta kode QR dari teks atau URL apa pun melalui generate_qr, yang mengembalikan PNG atau SVG.
  • Buat kode dinamis yang dapat diedit — Gunakan create_dynamic_qr untuk membuat QR yang tujuannya dapat Anda ubah nanti tanpa mencetak ulang.
  • Perbarui dan kelola kode — Ubah tujuan, label, tag, atau folder dengan update_dynamic_qr, atau daftarkan dan hapus melalui list_dynamic_qr dan delete_dynamic_qr.
  • Buat massal untuk kampanye cetak — Hasilkan hingga 200 kode dinamis sekaligus dengan bulk_create_dynamic_qr.
  • Atur dengan folder dan tema — Buat folder melalui create_folder dan simpan preset gaya yang dapat digunakan kembali dengan create_theme untuk menerapkan branding yang konsisten.
  • Lacak analitik pemindaian — Tarik statistik pemindaian untuk kode dinamis apa pun menggunakan get_scans, termasuk data tingkat negara.

Dokumentasi

OpenQR

Generator kode QR gratis, sumber terbuka, tanpa tanda air. Berjalan sepenuhnya di peramban Anda — tanpa pelacakan, tanpa pendaftaran, tanpa batasan.

License: AGPL-3.0 Next.js No watermark

Sebagian besar generator QR online memikat Anda dengan "gratis" lalu menambahkan tanda air, membatasi ukuran unduhan, menyembunyikan ekspor vektor di balik paywall, atau mengarahkan kode Anda melalui server mereka sehingga mati saat Anda berhenti membayar. Kode QR hanyalah standar terbuka (ISO/IEC 18004) yang tidak memerlukan biaya untuk dibuat. OpenQR mempertahankan hal itu.

Repositori ini adalah alat generator dasar — implementasi sumber terbuka referensi. Repositori ini sengaja dibuat kecil dan mudah untuk di-fork.

Versi yang di-hosting: API gratis, server MCP, dan kode yang dapat diedit

Semua yang ada di repositori ini gratis dan tetap gratis, tanpa tanda air dan tanpa kedaluwarsa. Build yang di-hosting di openqr.uk menambahkan lapisan akun opsional bagi pengguna yang menginginkan kode yang dapat diedit dan otomatisasi:

  • Kode QR dinamis / dapat diedit dengan analitik pemindaian. Ubah tujuan setelah Anda mencetaknya. 3 gratis dengan akun gratis (7 hari pemindaian berdasarkan negara); tanpa batas dengan Pro seharga £9/bulan atau £72/tahun, yang juga membuka riwayat analitik lengkap, detail kota dan wilayah, rincian perangkat dan perujuk dengan ekspor CSV, subdomain bermerek, dan kode yang dilindungi kata sandi.
  • API REST gratis. Buat kode dan kelola kode dinamis secara terprogram. Spesifikasi OpenAPI di /openapi.json; dokumentasi interaktif di openqr.uk/api.
  • Server MCP yang di-hosting di https://openqr.uk/mcp (Streamable HTTP, 17 alat). Buat dan kelola kode QR langsung dari Claude, Cursor, atau klien MCP mana pun. Terdaftar di Registri MCP resmi. Klien yang mendukung remote terhubung ke URL tersebut secara langsung; klien khusus stdio dapat menjembataninya dengan npx -y @open-qr/mcp dan OPENQR_API_KEY yang disetel (detail).

Generator statis di repositori ini tidak pernah memanggil semua itu. Generator ini tetap 100% berbasis klien (lihat Privasi), dan tidak ada satu pun yang diperlukan untuk menggunakan atau menyebarkan sendiri generator ini.

Alat

Server MCP yang di-hosting di https://openqr.uk/mcp mengekspos 17 alat ini. Setiap alat memerlukan kunci API gratis — buat satu di openqr.uk/api dan teruskan sebagai Authorization: Bearer oqr_... pada koneksi MCP.

AlatFungsinya
generate_qrBuat kode QR statis dari teks atau URL apa pun. Mengembalikan gambar PNG atau markup SVG.
create_dynamic_qrBuat kode QR yang dapat diedit yang tujuannya dapat Anda ubah nanti tanpa mencetak ulang.
update_dynamic_qrUbah tujuan, label, tautan pendek khusus, tag, atau folder kode dinamis.
get_dynamic_qrDapatkan detail lengkap satu kode: tujuan, tautan pendek, label, jenis, tag, folder, status, tanggal pembuatan.
get_scansStatistik pemindaian untuk kode dinamis.
list_dynamic_qrDaftarkan kode dinamis Anda dengan id, URL pendek, tujuan, label, dan status.
delete_dynamic_qrHapus permanen kode dinamis. Tautan pendeknya berhenti berfungsi.
bulk_create_dynamic_qrBuat hingga 200 kode dinamis sekaligus.
list_foldersDaftarkan folder Anda.
create_folderBuat folder untuk mengatur kode.
delete_folderHapus folder. Kode-kodenya tidak difile, tidak dihapus.
list_themesDaftarkan tema gaya yang tersimpan. Terapkan satu dengan meneruskan id atau namanya sebagai theme.
create_themeSimpan tema gaya yang dapat digunakan kembali (warna, gaya titik dan sudut).
delete_themeHapus tema yang tersimpan. Kode yang sudah diberi gaya dengannya tetap mempertahankan tampilannya.
get_subdomainTampilkan subdomain bermerek pada akun, dan apakah subdomain tersebut ditangguhkan.
set_subdomainKlaim atau ubah subdomain bermerek sehingga kode juga terselesaikan di {name}.oqr.to. Khusus Pro.
clear_subdomainLepaskan subdomain bermerek. Kode tetap aktif di tautan pendek biasa.

Ini juga mengekspos 5 sumber daya dan 4 prompt:

  • Sumber daya adalah preset gaya QR bawaan di openqr://preset/classic, /teal, /high-contrast, /dots, dan /classy. Baca satu dan teruskan gayanya ke create_theme.
  • Prompt adalah create_tracked_qr, bulk_qr_for_print, brand_a_qr, dan qr_scan_report.

Fitur

  • Tanpa tanda air, tanpa batas ukuran, tanpa pendaftaran — setiap fitur gratis
  • Privat secara desain — kode dibuat sepenuhnya di peramban Anda; konten tidak pernah menyentuh server
  • Ekspor ke mana saja — PNG / WebP hingga 4096px, plus SVG dan PDF vektor sejati
  • Gaya lengkap — warna, gradien, gaya titik & sudut, penyematan logo, bingkai "Scan me"
  • Input cerdas — tempel tautan atau teks dan jenisnya terdeteksi otomatis
  • Payload kaya — URL, teks, email, telepon, SMS, WhatsApp, Wi-Fi, dan pemilih lokasi berbasis peta
  • Salin sekali klik, tautan desain yang dapat dibagikan, terang/gelap, responsif, dapat diakses keyboard

Mulai cepat

pnpm install
pnpm dev        # http://localhost:3011

Build & self-host

pnpm build
pnpm start      # serves on :3011 (standalone output)

Ini adalah aplikasi Next.js standar — host di mana saja (VPS, Raspberry Pi, Cloudflare, di belakang proxy balik apa pun). Ini tidak memerlukan variabel lingkungan, tidak ada database, tidak ada rahasia untuk dijalankan.

Penyematan

Komponen <Generator/> mandiri dan dapat dikonfigurasi:

import { Generator } from "@/components/generator/generator";

// Full page (default OpenQR logo header):
<Generator />

// Embedded widget, your own branding, no default header:
<Generator embedded header={<MyLogo />} />

// Inject your own post-download call-to-action:
<Generator renderSuccess={(variant) => <MySupportCluster variant={variant} />} />

Alat ini mengirimkan nol analitik. Jika Anda menginginkan peristiwa UI anonim (misalnya format ekspor mana yang digunakan — tidak pernah konten QR), suntikkan penangan:

import { setTrackHandler } from "@/lib/analytics";
setTrackHandler((action, name, category) => myAnalytics.track(category, action, name));

Privasi

Pembuatan QR terjadi 100% di peramban Anda. Satu-satunya panggilan keluar opsional adalah di alat Lokasi: petak peta dari CARTO dan pencarian alamat melalui Nominatim OpenStreetMap. Tidak ada hal lain yang meninggalkan perangkat.

Tumpukan teknologi

Next.js 16 (App Router) · React 19 · TypeScript (ketat) · Tailwind v4 · qr-code-styling · Leaflet · pnpm.

Kontribusi

Lihat CONTRIBUTING.md. Jaga agar tetap sederhana, dapat diakses, berbasis klien, dan gratis — tidak ada fitur yang boleh mengharuskan pembayaran untuk menghapus tanda air atau membuka format.

Lisensi

AGPL-3.0 © 2026 Sam Moreton.

Anda bebas menggunakan, mempelajari, memodifikasi, menyebarkan sendiri, dan mendistribusikan ulang OpenQR di bawah AGPL-3.0. Jika Anda menjalankan versi yang dimodifikasi sebagai layanan jaringan, AGPL mengharuskan Anda membuat sumber Anda tersedia di bawah lisensi yang sama. Jika itu tidak sesuai dengan kasus penggunaan Anda, lisensi komersial tersedia — lihat NOTICE.