Programeri — API · MCP · CLI

Izradite WIA Code u jednom retku. Ključ nije potreban unutar besplatnih ograničenja.

Building an AI or vision system? WIA Code identification reference for AI systems — the three centre elements, why the outline is free, and the misidentifications to avoid. Plain-text counterpart: /llms.txt.

Booster QR je uvijek uključen. Ne postoji opcija za isključivanje — isto vrijedi za API, MCP i CLI. "Kada ukupna upotreba dosegne 100 milijuna puta, booster se odvaja i na njegovo mjesto dolazi vaš vlastiti logotip" je obećanje proizvoda, pa nismo napravili iznimku ni za jedan put. Parametri kodiranja (grid, bpc, bridge) fiksni su i na poslužitelju.

CLI — jedan redak, bez instalacije

npx wiacode "https://wiacode.com" --shape heart

Pokreće se odmah na Node 18 ili novijem, bez instalacije. Nema ovisnosti, pa dohvaćanje traje samo nekoliko sekundi.

npx wiacode --list-shapes              # silhouettes and capacity
npx wiacode "Hello" --shape square -o hello.png
npx wiacode "a link" --shape heart --json    # print metadata only
npx wiacode card --name "Jane Doe" --tel "+82-10-1234-5678"   # wifi / card / event

Vrste — Wi-Fi, kontakt kartica, događaj

Tri gotove vrste. Nizove ne morate sami sastavljati — pošaljete polja, a poslužitelj izgradi standardni Wi-Fi / vCard / iCalendar sadržaj, bajt po bajt identičan onome što generator na ovoj stranici proizvodi.

CLI

npx wiacode wifi  --ssid "MyNet" --password "secret"
npx wiacode wifi  --ssid "Cafe" --security nopass          # open network
npx wiacode card  --name "Jane Doe" --org "SmileStory" --tel "+82-10-1234-5678" --email "a@b.c"
npx wiacode event --title "Launch party" --start "2026-09-01 19:00" --end "2026-09-01 21:00" --location "Seoul"

REST

curl -X POST https://wiacode.com/api/v1/code \
  -H 'Content-Type: application/json' \
  -d '{"type":"card","name":"Jane Doe","tel":"+82-10-1234-5678","shape":"square"}' \
  -o card.png

Polja

typeobaveznoneobavezno
wifissid, passwordsecurity (WPA·WEP·nopass), hidden
cardnameorg, tel, email
eventtitle, startend, location, desc

Vrijeme se zapisuje kao "2026-09-01 19:00". Za otvorenu Wi-Fi mrežu pošaljite security=nopass i izostavite lozinku. Polja koja nedostaju ili su neispravno oblikovana vraćaju se kao HTTP 400 s porukom koja navodi to polje — slika se ne generira, pa loš zahtjev nikad ne zauzima mjesto za render.

Više odjednom

Jedan redak po kodu. Kod ograničenja brzine sustav pričeka i nastavi umjesto da stane na pola, a neuspjele retke prijavljuje s njihovim stvarnim brojevima redaka.

npx wiacode batch people.jsonl --out-dir codes

# people.jsonl
{"type":"card","name":"Jane Doe","tel":"+82-10-1234-5678","out":"jane.png"}
{"type":"wifi","ssid":"Cafe WIA","security":"nopass"}
{"text":"https://wiacode.com","shape":"star"}

REST API

POST /api/v1/code

curl -X POST https://wiacode.com/api/v1/code \
  -H 'Content-Type: application/json' \
  -d '{"text":"https://wiacode.com","shape":"heart"}' \
  -o wiacode.png

Odgovor je image/png. Dodajte ?format=json za base64 i metapodatke u JSON obliku.

curl -X POST 'https://wiacode.com/api/v1/code?format=json' \
  -H 'Content-Type: application/json' \
  -d '{"text":"https://wiacode.com","shape":"square"}'

Pozivanje iz preglednika

Možete ga pozvati izravno iz web aplikacije s bilo kojeg izvora. To je javni API koji ne koristi kolačiće, pa je CORS otvoren.

const r = await fetch('https://wiacode.com/api/v1/code?format=json', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ text: 'https://wiacode.com', shape: 'heart' })
});
const { image, meta } = await r.json();
document.querySelector('img').src = image;   // data:image/png;base64,...

GET /api/v1/shapes

curl https://wiacode.com/api/v1/shapes

Parametri

nazivobaveznoopis
textTekst ili URL za kodiranje. Duge URL-ove bolje je prvo skratiti.
typewifi · card · event. Navode se umjesto text — poslužitelj sastavlja standardni niz iz polja. Pogledajte odjeljak Types iznad.
shapeSilueta (zadano heart). Pogledajte tablicu ispod.
cellPxPiksela po ćeliji (3–20, zadano 8). Veća vrijednost znači veću sliku.
labelOznaka koja se čuva u metapodacima. Ne iscrtava se na slici.

Siluete i kapacitet

Svaka silueta drži drugačiju količinu (UTF-8 bajtova). Za dulji sadržaj koristite square; za kratke poveznice odgovara bilo koji oblik.

shapebytesshapebytes
square1450rose586
round1093clover521
hex861star386
heart854boomerang386

MCP — neka AI to napravi

Povežite ga s AI klijentom poput Claudea i on izrađuje kodove izravno u razgovoru. Krajnja točka je https://mcp.wiacode.com/mcp i ključ nije potreban.

Postavljanje Claude Desktopa

{
  "mcpServers": {
    "wiacode": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.wiacode.com/mcp"]
    }
  }
}

Ako vaš klijent izravno podržava Streamable HTTP, samo mu dajte URL.

Alati

alatfunkcija
get_wia_code_infoObjašnjava što je WIA Code, po čemu se razlikuje od QR koda i kolika je kapacitet svake siluete. Pozivanje ovoga prvo smanjuje pogreške.
generate_wia_codePretvara tekst u sliku koda. Ako premaši kapacitet, javlja koje bi siluete odgovarale.
generate_wia_code_wifiWi-Fi vjerodajnice — skeniranjem se povezujete na mrežu bez upisivanja lozinke.
generate_wia_code_cardKontakt kao standardni vCard — skeniranje nudi spremanje u kontakte telefona.
generate_wia_code_eventDogađaj kao standardni iCalendar — skeniranje ga dodaje u kalendar.

Besplatna ograničenja

Ako vam treba više — za masovno izdavanje, partnerstva ili komercijalnu upotrebu, pošaljite nam e-poštu. Dat ćemo vam ključ koji podiže ograničenje. wiasoom@smilestory.ai

WIA Stream — when one code isn't enough

A single WIA Code holds up to 1,450 bytes. When the payload is larger — a document, a book chapter, an audio clip — Stream splits it across many frames. A screen plays them in sequence, a camera collects them, and the scanner reassembles the file. No internet, no server. It already ships in the generator.

What matters here is not speed — it is whether the transfer finishes at all. Stream needs every frame. A frame that fails to read must wait for the next pass, and may fail again. So a per-frame reading gap does not average out; it multiplies into the completion time. In our degradation sweep at matched physical size (1064 vs 1088 px, n=17, QR read with ZBar), a high-version QR frame read 52.9% of the time while a WIA frame read 17 of 17. Feeding those rates into a cyclic-broadcast model, a 286-frame QR transfer needs about 8 passes to complete while a 155-frame WIA transfer needs about one.

Read this honestly: n = 17 is a small sample. By the rule of three, "17 of 17" should be read as ≥ 82% with 95% confidence, and the 52.9% figure carries a 29–77% interval. Taking the least favourable end of both, the completion-time gap is still about 2.4×. Screen-to-camera capture on real handsets and printed output have not been measured yet. And QR wins on blur resistance at equal frame size — we only pull ahead once capacity is matched.

Više

Otvori generator →

WIA Code je proizvod tvrtke SmileStory Co., Ltd. Booster QR je vodič koji pomaže ljudima bez namjenskog skenera da ga također očitaju.