Beta yazılım, tamamen yapay zekâ tarafından yazıldı.Hiçbir satır bir insan tarafından tek tek incelenmedi, güvenlik denetiminden geçmedi. Garanti ve sorumluluk yoktur: kullanım riski size aittir.Devamı
İçeriğe geç

Eklentinizi yayımlama ​

Eklentiler düz klasörler olarak dağıtılır. Yayımlamak, insanlara düzenleyiciden kurabilecekleri bir klasör (genellikle bir zip) vermek demektir.

Kontrol listesi ​

  1. Manifest. id benzersiz ve sabittir, version anlamsal sürümlemeyi izler, minMacroGrid kullandığınız özelliklere sahip en eski Macro Grid'dir (derlediğiniz SDK sürümü ya da daha eskisi).
  2. İzinler (JavaScript). Yalnızca kullandığınız izinleri isteyin; bkz. İzinler. Daha fazla izin isteyen bir güncelleme, kullanıcının yeniden onayını bekler.
  3. Bir README: eklentinin ne yaptığını, gereksinimlerini, ayarlarını ve verileri nerede sakladığını anlatır. Bir sırrı düz metin olarak saklıyorsa bunu belirtin.
  4. Bir lisans. Bir LICENSE dosyası ekleyin; üçüncü taraf kod veya varlık içeriyorsa bir NOTICE.md de ekleyin. Her varlığın (simge, yazı tipi) nereden geldiğini ve yeniden dağıtma hakkınız olduğunu belirtin.
  5. Bir değişiklik günlüğü. Bu depodaki eklentilerde olduğu gibi, kısa bir herkese açık ve ayrıntılı bir teknik günlük tutun.
  6. Temiz bir durumdan test edin: eklentiyi kaldırın, dağıtacağınız klasörden kurun ve kendi README'nizi izleyin.

Neler dağıtılır ​

plugin.json, betik ve LICENSE dosyalarını içeren klasör. Eklentiniz bir JavaScript eklentisi olmalıdır: sunucu başka bir yazarın C# eklentisini yüklemez.

Klasörün içeriğini zipleyin. Kullanıcılar ya %AppData%\MacroGrid\plugins\<id>\ içine açar ya da açılmış klasör üzerinde Eklentiler, Eklentileri Yönet…, Klasörden Yükle… yolunu kullanır.

Bu depodaki sürümler ​

Bu depodaki resmî eklentileri bakımcı, main üzerindeki bir etiketten (plugin-<name>-v<version>, örneğin plugin-obs-v0.2.0) kendi bilgisayarındaki bir betikle derler, imzalar ve yayımlar: imza anahtarı o bilgisayardan hiç çıkmaz. Sürüm zip'i kendi dosyaları üzerinde bir imza taşır; sunucu bir C# eklentisi her yüklendiğinde bunu denetler. Proje dışından gelen çekme istekleri (pull request) genel olarak kabul edilmez, çünkü resmî eklentiler tam güvenle çalışır; önce bir issue açın. Kendi eklentiniz kendi deponuza, bir JavaScript eklentisi olarak aittir ve insanlar onu oradan kurar (aşağıya bakın).

Kendi kaynağınızı çalıştırma ​

Sunucu, kullanıcının eklediği herhangi bir genel GitHub deposundan da bir JavaScript eklentisi kurabilir, yalnızca bu depo değil — ama açık bir üçüncü taraf uyarısıyla, çünkü yalnızca bu deponun sürümleri resmî anahtarla imzalanır. C# eklentisi sunan bir depo reddedilir: sunucu C# eklentisini yalnızca resmî kaynaktan kurar. İki biçim desteklenir:

  • Çok eklentili bir depo, Keşfet sekmesinde kaynak olarak eklenir: deponuzun kökünde, main üzerinde, yalnızca kendi sürümlerinize işaret eden bir macrogrid-index.json tutun. Bu deponun examples/third-party-release.yml ve scripts/update-plugin-index.ps1 dosyalarını başlangıç noktası olarak kopyalayın ve imzalama adımını çıkarın (resmî bir anahtarınız yok, ve kendiniz eklediğiniz bir imzaya zaten güvenilmez). Yalnızca "kind": "js" eklentileri listeleyin.
  • Tek eklentili bir depo, URL'si yapıştırılarak kurulur: kökte, her zaman en son sürümle eşleşen bir plugin.json tutun; v<version> etiketiyle, bir <id>-<version>.zip ve bir <id>-<version>.zip.sha256 varlığıyla.

Kökte plugin.json yerine macrogrid-index.json bulunması, sunucuya "bu çok eklentili bir depo" olduğunu söyler — tam şema için bkz. Kaynak dizini.

Mağaza ​

Mağaza, bu deponun resmî eklentilerini listeler ve kendini depodan ve GitHub sürümlerinden oluşturur. Bir eklentinin oraya nasıl girdiği şöyledir (bu depoya yalnızca bakımcı eklenti ekler; bkz. Depo kuralları):

  1. Klasörü ekleyin: depo kökünde (örneğin MyPlugin/) plugin.json, bir README.md (ilk bölümü "Ne yapar" olur, ilk paragrafı kart metni olur), bir CHANGELOG.md ve yukarıda anlatıldığı gibi lisans dosyaları bulunsun.
  2. İsterseniz website/store/catalog.json dosyasına bir satır ekleyin: { "id": "my-plugin", "dir": "MyPlugin", "category": "Integrations", "icon": "code" }. Mağaza, plugin.json içeren her kök klasörü bu satır olmadan da listeler (kategori "Diğer", ikon yok); satır yalnızca kartın görünümünü belirler. id, plugin.json içindeki id ile aynı olmalıdır. icon, website/public/store/icons/ içindeki bir SVG'nin adıdır; yoksa kart bir harf gösterir. En başa sıralamak için "featured": true ekleyin.
  3. Bir sürüm etiketleyin: plugin-<id>-vX.Y.Z (örneğin plugin-my-plugin-v0.1.0), Sürümler bölümünde anlatıldığı gibi. Sürüm yayımlandığında Mağaza, zip dosyasını indirme düğmesi olarak gösterir. Site, bir sürüm yayımlandığında, düzenlendiğinde veya silindiğinde yeniden oluşturulur.

Taslak sürümler asla gösterilmez. Bir eklentinin yayımlanmış sürümü olana kadar kartı GitHub Releases sayfasına bağlanır.

Kullanıcılar için güvenlik notları ​

Kullanıcılarınıza eklentinizin neler yapabildiğini söyleyin. Bir JavaScript eklentisi sandbox içinde çalışır ve çalışmadan önce izin listesini gösterir; Macro Grid başka yazarların eklentilerini incelemez, bu yüzden her izinle ne yaptığınızı, özellikle input ve http için, açıkça yazın.

Macro Grid siteleri: PC · Telefon · Eklentiler
MIT Lisansı ile yayımlanmıştır. Beta yazılım, tamamen bir yapay zekâ asistanı tarafından yazılmıştır, garanti verilmeden olduğu gibi sunulur.