Greasy Fork staat het gebruik van externe code in sommige gevallen toe. Scripts die externe code bevatten buiten het toegestane gebruik worden verwijderd. Als je een script tegenkomt die de regels overtreedt, maak er dan melding van.

Let op: deze regels zijn alléén van toepassing op externe, uitvoerbare code. Het laden van niet-uitvoerbare code, zoals json en css, is altijd toegestaan.

Rationeel

Gebruikersscripts zijn technisch in staat om andere scripts te laden en uit te voeren. Dit kan op verschillende manieren, waaronder:

Dit is een handige functie en de meeste scriptmakers gebruiken dit voor legitieme doeleinden, maar de functie kan ook worden misbruikt. Een van de kernwaarden van Greasy Fork is dat de gebruiker code van een script moet kunnen inspecteren. Externe scripts kunnen deze werkwijze op verschillende manieren omzeilen: zonder waarschuwing of geschiedenis, door het tonen van verschillende code aan verschillende mensen en door het verbergen van schadelijke code te midden van bekende bibliotheken. Zelfs áls iemand een extern script zou controleren en het als legitiem zou aanmerken, dan nog is er geen garantie dat een script altijd legitiem is of zal zijn.

Toegestane externe codes

Dit zijn de methoden waarop externe code is toegestaan op Greasy Fork. Alle overige regels omtrent code zijn van toepassing, tenzij anders aangegeven.

Contentdeliverynetwerken (CDNs)

Code van CDNs is niet toegestaan. Bekijk een lijst met herkende CDNs. De code mag verkleind worden, maar niet verdoezeld.

Scripts met subbron-controlesommen

Het gebruik van @require en @resource in combinatie met url's met subbron-integriteit in de Tampermonkey-opmaak is toegestaan.

Greasy Forkbibliotheken

Scripts als bibliotheken plaatsen op Greasy Fork is toegestaan. Bibliotheken kunnen worden optioneel worden samengesteld tijdens het maken van een nieuw script. Ze kunnen desgewenst worden opgehaald van een externe url, zoals een GitHub-repo.

Scripts invoegen van oorspronkelijke host

Invoegen van externe scripts van dezelfde domeinnaam als waar ze vandaan komen is toegestaan. Als een script op https://voorbeeld.nl wordt uitgevoerd en https://voorbeeld.nl/script.js downloadt, dit aanpast en vervolgens weer op https://voorbeeld.nl/ invoegt, dan mag dat.

https://voorbeeld.nl/script.js invoegen op https://anderesite.nl mag niet.