Struktura obecności
Poznaj wymagany układ folderów obecności Nowly.
Układ Folderów
Obecność znajduje się w src, pogrupowana według pierwszej litery jej nazwy:
TXTsrc/Y/YouTube/
|-- metadata.json
|-- presence.ts
`-- assets/
|-- logo.png
|-- icon.png
`-- thumbnail.jpgmetadata.json
metadata.json opisuje platformę, obsługiwane adresy URL, autora, kategorię, zlokalizowane opisy, zasoby marketplace oraz opcjonalne flagi, takie jak discordNative.
presence.ts
presence.ts zawiera logikę czasu wykonania. Wykrywa stan strony i wywołuje Presence API.
utils/
W przypadku złożonych obecności podziel swoją logikę na dedykowane pliki w folderze utils/. Na przykład obecność YouTube organizuje pomocnicze funkcje DOM, parsowanie kanałów i rozpoznawanie Shorts w oddzielnych modułach:
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 rozwiązuje lokalne importy z presence.ts, więc możesz importować pliki narzędziowe normalnie:
import { findVideo } from "./utils/dom"
import { getChannelInfo } from "./utils/channel"assets
Zasoby są używane przez marketplace, zainstalowany pakiet obecności, ładunki aktywności Discorda oraz obrazy Open Graph.
Wymagane pliki:
| Pole | Typ | Opis | Domyślny |
|---|---|---|---|
logo.png* | PNG, 300×300 | Szerokie logo marki do nagłówków marketplace, stron obecności i generowanych obrazów OG. | - |
icon.png* | PNG, 128×128 | Kwadratowa ikona do kompaktowych elementów UI i kluczy obrazów aktywności Discorda. | - |
thumbnail.jpg* | JPG, 1920×1080 | Obraz podglądu używany, gdy obecność potrzebuje większej grafiki. | - |
Te wymiary są dokładnymi wymaganiami, sprawdzanymi przez CI przy każdym PR obecności - szczegóły w Assets.