Razvijalci — API · MCP · CLI

Ustvarite WIA Code z eno vrstico. V okviru brezplačne omejitve ključ ni potreben.

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 vedno vključen. Možnosti izklopa ni — enako velja za API, MCP in CLI. „Ko skupna uporaba doseže 100 milijonov, se booster loči in na njegovo mesto pride vaš lastni logotip” je obljuba izdelka, zato nismo naredili izjeme za nobeno pot. Parametri kodiranja (grid, bpc, bridge) so prav tako določeni na strežniku.

CLI — ena vrstica, brez namestitve

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

Deluje takoj na Node 18 ali novejšem, brez namestitve. Nima odvisnosti, zato prenos traja le nekaj sekund.

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, vizitka, dogodek

Tri pripravljene vrste. Nizov vam ni treba sestavljati sami — posredujete polja in strežnik zgradi standardno vsebino Wi-Fi / vCard / iCalendar, bajt za bajtom enako tistemu, kar ustvari generator na tej strani.

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

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

Časi so v obliki "2026-09-01 19:00". Za odprto Wi-Fi omrežje posredujte security=nopass in izpustite geslo. Manjkajoča ali napačno oblikovana polja se vrnejo kot HTTP 400 s sporočilom, ki navaja polje — slika se ne izriše, zato napačna zahteva nikoli ne zasede mesta za izris.

Več naenkrat

Ena vrstica na kodo. Ob omejitvi hitrosti počaka in nadaljuje namesto da bi se ustavil na sredini, neuspele vrstice pa javi z njihovimi dejanskimi številkami vrstic.

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, da dobite base64 in metapodatke kot JSON.

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

Klicanje iz brskalnika

Lahko ga kličete neposredno iz spletne aplikacije na katerem koli izvoru. To je javni API, ki ne uporablja piškotkov, zato je CORS odprt.

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

imeobveznoopis
textBesedilo ali URL za kodiranje. Dolge URL-je je bolje najprej skrajšati.
typewifi · card · event. Namesto text — strežnik iz polj sestavi standardni niz. Glejte razdelek Vrste zgoraj.
shapeSilhueta (privzeto heart). Glejte spodnjo tabelo.
cellPxSlikovnih pik na celico (3–20, privzeto 8). Večja vrednost pomeni večjo sliko.
labelOznaka, shranjena v metapodatkih. Ni izrisana na sliki.

Silhuete in zmogljivost

Vsaka silhueta sprejme drugačno količino (bajti UTF-8). Za daljšo vsebino uporabite square; za kratke povezave ustreza katera koli.

shapebytesshapebytes
square1450rose586
round1093clover521
hex861star386
heart854boomerang386

MCP — naj ga ustvari AI

Povežite z AI-odjemalcem, kot je Claude, in kode nastanejo kar med pogovorom. Končna točka je https://mcp.wiacode.com/mcp in ključ ni potreben.

Namestitev za Claude Desktop

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

Če vaš odjemalec neposredno podpira Streamable HTTP, preprosto vnesite ta URL.

Orodja

orodjekaj naredi
get_wia_code_infoPojasni, kaj je WIA Code, kako se razlikuje od kode QR in kakšna je zmogljivost vsake silhuete. Če to pokličete najprej, zmanjšate število napak.
generate_wia_codeBesedilo spremeni v sliko kode. Če preseže zmogljivost, sporoči, katere silhuete bi ustrezale.
generate_wia_code_wifiPoverilnice za Wi-Fi — s skeniranjem se povežete v omrežje brez vnosa gesla.
generate_wia_code_cardKontakt kot standardni vCard — s skeniranjem se ponudi shranitev med stike v telefonu.
generate_wia_code_eventDogodek kot standardni iCalendar — s skeniranjem se doda v koledar.

Brezplačne omejitve

Če potrebujete več — za množično izdajo, partnerstva ali komercialno rabo nam pišite. Dali vam bomo ključ, ki dvigne omejitev. 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.

Več

Odpri generator →

WIA Code je izdelek podjetja SmileStory Co., Ltd. Booster QR je pripomoček, ki pomaga kodo prebrati tudi tistim brez namenskega bralnika.