PUCKS / GeliştiriciDeveloper
PUCKS · GELİŞTİRİCİ MERKEZİPUCKS · DEVELOPER HUB

Kendi
Ekranını Kur
Build Your
Own Screen

İki yol var: kod gerektirmeyen saat yüzleri (clockface.json) ve ayarlanabilir ekran eklentileri (manifest.json). Spesifikasyonu indir, yapay zekâya ver, gerisini o yazsın. Two paths: code-free clock faces (clockface.json) and configurable screen plugins (manifest.json). Download the spec, hand it to an AI, and let it do the rest.

Yapay Zekâ ile ÜretBuild with AI

Aşağıdaki spesifikasyon dosyaları cihazın kabul ettiği alanların özetidir; en güncel ve tam anlatım rehber sayfalarındadır. Bir dosyayı indir, ChatGPT / Claude / Gemini gibi bir yapay zekâya doğrudan yükle ve “bana şunu yapan bir saat yüzü/eklenti üret” de — modelin çıktıyı doğru formatta üretmesi için gereken her şey içindedir. The spec files below are a summary of the fields the device accepts; the guide pages are the most current and complete reference. Download one, upload it directly to an AI (ChatGPT / Claude / Gemini) and say “build me a clock face/plugin that does X” — it contains everything the model needs to produce valid output.

HIZLI BAKIŞQUICK PEEK
clockface.json
{
  "bgColor": "#000000",
  "elements": [
    { "type": "TIME", "format": "HH:MM",
      "x": 120, "y": 110, "font": 7, "color": "#00FF00" },
    { "type": "SHAPE_ARC", "x": 120, "y": 120,
      "width": 110, "height": 100,
      "bind": "seconds", "color": "#E8281E" }
  ]
}
manifest.json
{
  "schema_version": 1,
  "id": "borsa",
  "name": "Borsa Takip",
  "version": "1.0.0",
  "display_mode": "content_only",
  "renderer": "builtin:borsa",
  "target_resolution": "240x240"
}
LİMİTLER & YAPILIMITS & STRUCTURE

Sınırlar ve
Paket Yapısı
Limits &
Package Layout

Cihaz bu sınırları zorunlu olarak doğrular — aşan dosya reddedilir. Yapay zekâya üreteceğin saat yüzünü/eklentiyi tarif ederken bu değerleri ver, çıktı ilk seferde geçerli olsun.The device strictly validates these limits — anything over is rejected. When prompting an AI, pass these values so the output is valid on the first try.

saat yüzü paketiclock face package
my_face/
├─ manifest.json        ★ kimlik (id, name, version…)identity (id, name, version…)
├─ clockface.json       ★ tasarım (bgColor + elements[])design (bgColor + elements[])
└─ preview.jpg          ○ market önizlemesi (240×240; eski ad preview.png)market preview (240×240; legacy name preview.png)
eklenti paketiplugin package
my_plugin/
├─ manifest.json        ★ kimlik + davranış bayraklarıidentity + behavior flags
├─ schema.json          ○ kullanıcı ayar alanları (eski ad config_schema.json)user setting fields (legacy name config_schema.json)
├─ preview.png          ○ önizleme (sadece app)preview (app only)
└─ screenshots/         ○ galeri (sadece app)gallery (app only)
   ├─ 01.png
   └─ 02.png

★ zorunlu · ○ opsiyonel · klasör adı = manifest.id olmalı★ required · ○ optional · folder name must equal manifest.id

Girdi LimitleriInput Limits

AlanField LimitLimit NotNote
id[a-z0-9_-] · ≤ 40/ \ .. boşluk · nokta yasak. Klasör adı = id.No / \ .. spaces · dots. Folder name = id.
name≤ 32 karaktercharsMarket/menüde görünen ad. Tek satır.Display name in market/menu. Single line.
description≤ 120 karaktercharsÖnerilen. Uzun açıklama kartta kırpılır — kısa ve net tut.Recommended. Long text is clipped on the card — keep it short.
summary≤ 80 karaktercharsListe kartındaki tek satır özet (opsiyonel).One-line summary on the list card (optional).
versionx.y.zZorunlu, boş olamaz (SemVer).Required, non-empty (SemVer).
schema_version= 1Tam olarak 1 olmalı.Must be exactly 1.
target_resolution240x240Tek geçerli değer.Only valid value.
clockface.json≤ 64 KBTasarım dosyası boyut sınırı.Design file size cap.
preview.jpg≤ 160 KBSaat yüzü: JPG, 240×240. Eklenti paketinde preview.png.Clock face: JPG, 240×240. Plugin packages use preview.png.
x, y0 – 240Kenarlardan 8–12 px güvenli boşluk bırak.Keep 8–12 px safe margin from edges.
opacity0 – 100Şeffaflık (vermezsen 100).Transparency (defaults to 100).
size1 – 3Metin boyut çarpanı.Text size multiplier.
font1, 2, 4, 6, 7, 82 ince · 4 orta · 7 yedi-segment · 8 büyük. 0, 3 ve 5 yok.2 thin · 4 medium · 7 seven-segment · 8 large. 0, 3 and 5 do not exist.
int / slidermin ≤ default ≤ maxEklenti ayar alanı; min/max/step tanımla.Plugin setting field; define min/max/step.
İndirilen saat yüzüDownloaded facesmax 10max 10Cihazda aynı anda saklanan özel yüz sayısı.Custom faces stored on device at once.
EklentiPlugins8 yüklü · 3 aktif8 installed · 3 activeFlash/heap kaynak sınırı.Flash/heap resource limit.
Güvenlik: bunlar gevşetilmez. Plugin kod çalıştıramaz — yalnızca hazır çizim motorunu yapılandırır; ağ/dosya/bellek erişimi yoktur. Bilinmeyen ek alanlar yok sayılır (ileri uyumluluk).Security: these are never loosened. A plugin cannot run code — it only configures the built-in renderer; no network/file/memory access. Unknown extra fields are ignored (forward-compatible).