Presence Yapısı
Bir Nowly presence'ı için gerekli klasör düzenini anlayın.
Klasör Düzeni
Bir presence, adının ilk harfine göre gruplanarak src altında bulunur:
TXTsrc/Y/YouTube/
|-- metadata.json
|-- presence.ts
`-- assets/
|-- logo.png
|-- icon.png
`-- thumbnail.jpgmetadata.json
metadata.json, platformu, desteklenen URL'leri, yazarı, kategoriyi, yerelleştirilmiş açıklamaları, pazar yeri varlıklarını ve discordNative gibi isteğe bağlı bayrakları tanımlar.
presence.ts
presence.ts, çalışma zamanı mantığını içerir. Sayfa durumunu algılar ve Presence API'yi çağırır.
utils/
Karmaşık presence'lar için mantığınızı bir utils/ klasörü altındaki özel dosyalara bölün. Örneğin, YouTube presence'ı DOM yardımcılarını, kanal ayrıştırmayı ve Shorts çözümlemesini ayrı modüllerde düzenler:
TXTsrc/Y/YouTube/
|-- metadata.json
|-- presence.ts
|-- assets/
| |-- logo.png
| |-- icon.png
| `-- thumbnail.jpg
`-- utils/
|-- categories.ts
|-- dom.ts
|-- channel.ts
|-- text.ts
|-- bridge.ts
|-- shorts-dom.ts
|-- shorts-resolve.ts
`-- youtube-data.tsBundler, presence.ts'den gelen yerel içe aktarımları çözer, böylece yardımcı dosyaları normal şekilde içe aktarabilirsiniz:
import { findVideo } from "./utils/dom"
import { getChannelInfo } from "./utils/channel"assets
Varlıklar; pazar yeri, kurulu presence paketi, Discord etkinlik yükleri ve Open Graph görselleri tarafından kullanılır.
Gerekli dosyalar:
| Alan | Tür | Açıklama | Varsayılan |
|---|---|---|---|
logo.png* | PNG, 300×300 | Pazar yeri başlıkları, presence sayfaları ve oluşturulan OG görselleri için geniş marka işareti. | - |
icon.png* | PNG, 128×128 | Kompakt UI yüzeyleri ve Discord etkinlik görsel anahtarları için kare simge. | - |
thumbnail.jpg* | JPG, 1920×1080 | Presence daha büyük bir görsele ihtiyaç duyduğunda kullanılan önizleme görseli. | - |
Bu boyutlar, her presence PR'sinde CI tarafından kontrol edilen kesin gereksinimlerdir - ayrıntılar için bkz. Assets.