Já teve problemas ao pensar em como criar gemas e colocá-las open-source? Então este é artigo é pra você! :D

Estudando bastante sobre algumas gemas que executam funções mais específicas, entendi que qualquer pessoa da comunidade pode criar uma gem. Segue um tutorial:

Requisitos

Para criar sua Gem, precisamos de algumas ferramentas:

Estrutura Inicial do projeto

Crie uma pasta com o nome da sua sua_gem, em seguida dê um touch em um arquivo .gemspec. Depois, dentro da sua lib, crie uma o arquivo .rb da sua_gem. Seu arquivo precisa ficar desse jeito:

sua_gem
├── sua_gem.gemspec
└── lib
     └── sua_gem.rb

Criação da gema

Dentro da sua_gem.rb vamos codar as respectivas funções da gema, no meu caso, minha gema vai me devolver uma string “Minha primeira gem!”:

lib/sua_gem.rbclass sua_gem
  def self.hello
   puts "Minha primeira gem!"
  end
end

Configurando o gemspec

Depois de codar a sua_gem.rb, vamos configurar o .gemspec da sua_gem:

sua_gem.gemspecGem::Specification.new do |s|
 s.name        = 'sua_gem'
 s.version     = '0.0.0'
 s.date        = '2019-07-01'
 s.summary     = "Primeira versão da sua gem!"
 s.description = "Minha primeira gem que eu codei"
 s.authors     = ["Alan Turing"]
 s.email       = 'alan@turing.com'
 s.files       = ["lib/sua_gem.rb"]
 s.homepage    = 'https://github.com/username/gem'
 s.license     = 'MIT'
end

Tendo em mente que:

  • name = Nome da sua gem
  • version = Versão da sua gem
  • date = Data de modificação da sua gem
  • summary = Sumário da sua gem
  • description= Descrição da sua gem
  • authors = Autores da gem
  • email = email do(a) proprietário(a) da gem
  • files = Path da sua gem (onde você alocou seu arquivo.rb)
  • homepage = Onde sua gem foi upada (GitBucket também)
  • license = Licensa da sua gema (você pode achar licensas de gemas na internet, no caso, eu usei ‘MIT’)

Pronto para publicar

No ponto atual, podemos utilizar nosso código, porém nossos amiguinhos ainda não podem instalar a nossa gem.
Para outros programadores poderem usar a gema, você precisa executar alguns comandos:

Primeiro precisamos upar nosso código open-source:
Github:

git init
hub create
git add . 
git commit -m "My first gem" 
git push origin master

Em seguida, precisamos criar uma conta no site RubyGems.

Print do site RubyGems

Para fazer o setup do RubyGems com o seu computador, precisamos executar o seguinte comando (o comando vai te pedir sua senha do RubyGems):

curl -u (seu-rubygems-nick) https://rubygems.org/api/v1/api_key.yaml

E no final, construir nossa gema utilizamos um pequeno código no terminal:

gem build sua_gema.gemspec

Agora para verificar sua gem funcionando, você pode achar a gem no RubyGems! c:

Conclusão

Agora, aprendemos de forma simples e segura de como criar uma gem! Não perca a oportunidade de tirar suas dúvidas ou deixar uma sugestão aí nos comentarios :)

Thanks!