Koristi League
za PSR-4 autoloader namespace. Root namespacea neka bude u src
mapi.
Kod mora izgledati kako je opisano u PSR-2.
Na Packagistu koristi league
kao vendor namespace.
Piši unit testove. Trebalo bi bar 80% koda biti pokriveno testovima.
DocBlockaj/komentiraj sve!
Koristi semantičko verzioniranje.
Vodi dnevnik promjena (Changelog).
Koristi Travis-CI za testiranje.
Napiši razumljiv i opsežan README.
Nebitne datoteke za produkciju odstrani koristeći .gitattributes.
Više je razloga zašto objavljujemo pakete na ovaj način, za razliku od objavljivanja s privatnih računa, ali kao glavni razlog možemo istaknuti sljedeći:
Dva para očiju bolje vide nego jedan.
Radeći skupa uspijevamo napraviti bolje pakete jer dobijemo više feedbacka te nam je lakše odgovoriti na probleme i PR-ove.
Ne pokušavamo izmisliti kotač opet, osim ako taj kotač nije star, nesiguran i loš za korištenje. Ako se kotač (paket) ne može instalirati putem Composera, API mu je TotALnO glUP i ČuDAn, nema unit testova ili ga je glavni developer napustio, onda možemo pokušati napraviti sličan ili još bolji paket ispočetka.