Comece a usar o Theme Creator e o Theme CLI

Este tópico irá guiá-lo sobre como usar o Theme CLI com nosso site Theme Creator para desenvolver um tema e visualizar suas alterações em um site Discourse ativo.

  1. Cadastre-se para uma conta aqui no Meta se ainda não o fez

  2. Faça login no Theme Creator

  3. Instale o Theme CLI seguindo as instruções aqui

  4. Crie um novo tema no Theme Creator:

  5. Clique em advanced, depois em edit locally e em retrieve API key.

    Copie a chave de API que é gerada.

  1. Volte para sua linha de comando e digite discourse_theme download example-folder, onde example-folder é onde seu tema será armazenado localmente. Siga as instruções.

    • Insira https://discourse.theme-creator.io como a URL raiz do seu site Discourse.

    • Insira sua chave de API da etapa anterior quando solicitado.

    • Continue seguindo as instruções e selecione o tema que você criou na etapa 4.

    • Digite sim quando perguntado se deseja começar a monitorar seu tema.

  2. Agora, sua pasta de tema local está sendo monitorada para alterações, que serão enviadas automaticamente para o Theme Creator. Você pode abrir uma prévia do seu tema clicando em preview nas configurações do seu tema no Theme Creator.

  3. Para parar de monitorar as alterações, pressione ctrl + c na sua janela de linha de comando. Para começar a monitorar as alterações novamente, digite discourse_theme watch example-theme.

:tada: Agora você tem um diretório de tema local que pode editar e ver suas alterações ao vivo!

Para uma análise aprofundada de como os temas são estruturados e o que você pode fazer, confira nosso Developing Discourse Themes & Theme Components


Este documento é controlado por versão - sugira alterações no github.

42 curtidas

Olá. Estou tentando seguir estas instruções, mas continuo encontrando um problema. Após adicionar a chave da API, vejo o seguinte:

/usr/local/lib/ruby/gems/3.2.0/gems/discourse_theme-0.7.3/lib/discourse_theme/cli.rb:100:in `run': undefined method `exists?' for Dir:Class (NoMethodError)

        FileUtils.mkdir_p dir unless Dir.exists?(dir)
                                        ^^^^^^^
Did you mean?  exist?
        from /usr/local/lib/ruby/gems/3.2.0/gems/discourse_theme-0.7.3/bin/discourse_theme:6:in `<top (required)>'
        from /usr/local/lib/ruby/gems/3.2.0/bin/discourse_theme:25:in `load'
        from /usr/local/lib/ruby/gems/3.2.0/bin/discourse_theme:25:in `<main>'

Alguma ideia do porquê?
Obrigado desde já.

1 curtida

Olá!
Esta ferramenta ainda não suporta Ruby 3.2 devido a alterações na linguagem. Temos uma correção em andamento, mas Ruby 3.1.x funciona no momento.

6 curtidas

Ah, então é por isso.
Obrigado :slight_smile:

1 curtida

Isso agora está corrigido - discourse_theme deve funcionar no Ruby 3.2.x a partir da versão 0.7.4 da gem em diante :slight_smile:

3 curtidas

Uau, isso foi rápido :open_mouth:
Obrigado. Consegui fazer funcionar com a ajuda do meu gerente de linha, que sugeriu:

rbenv install 3.1.3
rbenv shell 3.1.3
gem install discourse_theme

O que na verdade não funcionou até que eu fechei a aba do terminal e a reabri.

O discourse_theme watch não está mais recarregando em tempo real? Ele costumava atualizar meu tema quando eu o salvava, mas agora preciso atualizar minha aba manualmente. Nada no console aponta o motivo.

1 curtida

Houve uma mudança há algum tempo

Você pode se interessar por Live Reload in Production

4 curtidas