<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Gabriel Laurencio</title>
    <description>The latest articles on DEV Community by Gabriel Laurencio (@laurencioscript).</description>
    <link>https://dev.to/laurencioscript</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F849450%2Fd72bb251-80e5-4de8-8208-0ef0fcbf3f0e.png</url>
      <title>DEV Community: Gabriel Laurencio</title>
      <link>https://dev.to/laurencioscript</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/laurencioscript"/>
    <language>en</language>
    <item>
      <title>Um Guia Simples para Levar Seu Projeto Angular para o GitHub Pages</title>
      <dc:creator>Gabriel Laurencio</dc:creator>
      <pubDate>Fri, 29 Sep 2023 18:04:45 +0000</pubDate>
      <link>https://dev.to/laurencioscript/um-guia-simples-para-levar-seu-projeto-angular-para-o-github-pages-3b3m</link>
      <guid>https://dev.to/laurencioscript/um-guia-simples-para-levar-seu-projeto-angular-para-o-github-pages-3b3m</guid>
      <description>&lt;p&gt;&lt;em&gt;Como parte de nossa jornada como desenvolvedores, adquirimos valiosas lições com a comunidade. Neste artigo, compartilharei algumas dicas que poderiam ter me ajudado e que você precisa ter em mente ao implantar seu projeto Angular no GitHub Pages. Minha intenção é contribuir com o conhecimento coletivo e ajudar você a navegar por esse processo com sucesso.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Por que usar o Github Pages ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;O GitHub Pages oferece uma solução gratuita e poderosa para hospedar sua aplicação diretamente de seu repositório GitHub. Neste artigo, exploraremos como implantar facilmente seu projeto Angular para que ele esteja acessível a todos.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Para começar é necessario ter feito uma configuração na aba "Pages" nas configurações do seu repositorio no github, selecione em "Source" a opção github actions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr0uitz86naa6aasl0mht.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr0uitz86naa6aasl0mht.png" alt="Configuração da Page de um repositorio no github"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Crie um diretório chamado ".github/workflows" dentro do seu projeto e, dentro dele, adicione um arquivo chamado "static.yml". Em seguida, insira o seguinte código:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;name: Deploy static content to Pages

on:

  push:
    branches: ["master"]

  workflow_dispatch:

permissions:
  contents: read
  pages: write
  id-token: write

concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  deploy:    
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [16.x]        
    steps:
    - uses: actions/checkout@v3
    - uses: actions/configure-pages@v3
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
        cache: 'npm'
    - run: npm ci
    - run: npm run build --prod      
    - uses: actions/upload-pages-artifact@v2
      with:
          path: './dist/remnant2build'
    - name: Deploy to GitHub Pages
      id: deployment
      uses: actions/deploy-pages@v2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;É importante verificar se o "node-version" especificado é compatível com o seu projeto e ajustar o "path" de compilação para que corresponda às necessidades específicas do seu projeto. Também ajustar o nome da Branch para que acontece o deploy automatico quando der o push na branch especificada.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Configure a URL base para /project-name-github/ para o ambiente do github. Isso significa que todos os URLs relativos no seu aplicativo Angular serão resolvidos em relação a /project-name-github/ como a raiz. No seu ambiente de desenvolvimento pode deixar "./". &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4suqsyowqq8kfipcmey.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4suqsyowqq8kfipcmey.png" alt="Codigo do head de um arquivo index.html"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Faça a mesma alteração no angular.json&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjq3vcnl5kzu9dmq6yqqh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjq3vcnl5kzu9dmq6yqqh.png" alt="Codigo do arquivo angular.json, mostrando o baseHref de production"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Após essas alterações realize o push e verifique o workflow na aba "action" no github do projeto.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa30tuf841cw573g9vrpc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa30tuf841cw573g9vrpc.png" alt="workflows no github do projeto"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No ultimo step do workflow "Complete Job" deve conter a url do seu projeto angular rodando.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl4m2llr8jn91ezulyyp8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl4m2llr8jn91ezulyyp8.png" alt="Foto com dos steps do workflow"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Precaução:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fique atento aos caminhos relativos no projeto, pois eles podem causar problemas no ambiente final.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl6ice18hnivlezucivub.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl6ice18hnivlezucivub.png" alt="Codigo mostrando a alteração necessario no src de images ou importações de arquivos"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Espero que este artigo tenha sido útil para você durante esse processo.&lt;/p&gt;

</description>
      <category>angular</category>
      <category>github</category>
      <category>deploy</category>
      <category>githubpages</category>
    </item>
  </channel>
</rss>
