Una gem è un pacchetto Ruby riutilizzabile. Crearne una è sorprendentemente semplice: Bundler impalca tutto per te.
bundle gem saluti
Ti genera struttura, test, licenza e il file .gemspec. Il codice va in lib/:
# lib/saluti.rb
module Saluti
def self.ciao(nome)
"Ciao, #{nome}!"
end
end
Poi costruisci e pubblichi:
gem build saluti.gemspec
gem push saluti-0.1.0.gem # su rubygems.org
I punti chiave: versiona con cura (segui il semantic versioning nel file version.rb), scrivi un README chiaro e aggiungi qualche test. Da quel momento chiunque installa il tuo codice con gem install saluti.
È il modo con cui l'ecosistema Ruby cresce: piccoli mattoni condivisi. La tua prima gem può essere anche solo un'utility che usi in più progetti.