<?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>Forem: Fernanda Sayuri</title>
    <description>The latest articles on Forem by Fernanda Sayuri (@fernandasayuri).</description>
    <link>https://forem.com/fernandasayuri</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%2F980329%2Fe08df993-3448-4fe4-a35d-2dae06ac817f.png</url>
      <title>Forem: Fernanda Sayuri</title>
      <link>https://forem.com/fernandasayuri</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/fernandasayuri"/>
    <language>en</language>
    <item>
      <title>Guia prático: Padrão de Commit</title>
      <dc:creator>Fernanda Sayuri</dc:creator>
      <pubDate>Wed, 26 Mar 2025 00:12:29 +0000</pubDate>
      <link>https://forem.com/fernandasayuri/guia-pratico-padrao-de-commit-30pa</link>
      <guid>https://forem.com/fernandasayuri/guia-pratico-padrao-de-commit-30pa</guid>
      <description>&lt;h1&gt;
  
  
  Padrão de commit
&lt;/h1&gt;

&lt;p&gt;Seja trabalhando sozinho ou em um time com vários devs ora ou outra precisamos consultar commits anteriores. No começo eu acaba escrevendo meus commits como: "Correção”, “Melhorias” e  “Update”, pois não sabia que existia uma boa prática pra isso. Assim, sempre que precisava buscar alguma alteração antiga era muito difícil e confuso... Até que descobrir o &lt;em&gt;Conventional Commits&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. &lt;strong&gt;O que é Conventional Commits?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.conventionalcommits.org/" rel="noopener noreferrer"&gt;Conventional commits &lt;/a&gt; trata-se de  um padrão de escrita de mensagens de commit para facilitar a comunicação entre desenvolvedores e ajudar a manter o histórico do código organizado.&lt;/p&gt;

&lt;p&gt;O padrão é bem simples:&lt;br&gt;
&lt;code&gt;&amp;lt;tipo&amp;gt;(escopo): &amp;lt;descrição&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  2. Tipos
&lt;/h2&gt;

&lt;p&gt;Os tipos é obrigatório e são sobre o que se trata o commit. &lt;br&gt;
Só pode ser usado um por commit, caso esteja em dúvida sobre qual usar, provavelmente trata-se de uma grande mudança e é possível separar o código em dois ou mais commits.&lt;/p&gt;

&lt;p&gt;Os tipos mais comuns são:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;feat&lt;/strong&gt;: novo recurso&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;fix&lt;/strong&gt;: solucionando um problema&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;docs&lt;/strong&gt;: mudanças na documentação&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;test&lt;/strong&gt;: alterações em testes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;build&lt;/strong&gt;: alterações em arquivos de build e dependências&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;perf&lt;/strong&gt;: alterações relacionadas à performance&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;style&lt;/strong&gt;: formatação de código e lint&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;refactor&lt;/strong&gt;: refatoração de código que não altera a funcionalidade&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;chore&lt;/strong&gt;: atualizações de tarefas de build, configurações de administrador e pacotes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;cleanup&lt;/strong&gt;: limpeza no código, legibilidade&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;remove&lt;/strong&gt;: exclusão de código/arquivos que não são mais utilizados&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;revert&lt;/strong&gt;: rollback para commit específico&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;É possível adicionar um &lt;code&gt;!&lt;/code&gt; opcional na para chamar atenção a quebra de compatibilidade.&lt;br&gt;
Exemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;feat!: descontinuar uso do componente card
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3. Escopo
&lt;/h2&gt;

&lt;p&gt;Este é opcional e trata-se sobre qual é o escopo específico abordado, como um componente, fluxo ou configuração. &lt;/p&gt;

&lt;h2&gt;
  
  
  4. Descrição
&lt;/h2&gt;

&lt;p&gt;Para escrever a descrição podemos pensar: "se eu aplicar esse commit ele vai..." ou "O que essa alteração faz?" e completar a frase.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Não é necessário colocar o porque do commit (motivação), mas sim o que de fato ele faz.&lt;/li&gt;
&lt;li&gt;É obrigatório escrever em inglês? Não, isso deve ser alinhado com outros devs que irão trabalhar no mesmo repositório, mas é sempre uma boa prática utilizar inglês para documentações. &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  5. Emojis
&lt;/h2&gt;

&lt;p&gt;É possível utilizar um emoji no início da mensagem de commit representando sobre o que ele se trata. &lt;br&gt;
É opicional e tem objetivo apenas visual para organização.&lt;/p&gt;

&lt;p&gt;Os principais tipos são:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tipo de commit&lt;/th&gt;
&lt;th&gt;Emojis&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Commit inicial&lt;/td&gt;
&lt;td&gt;🎉 &lt;code&gt;:tada:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tag de versão&lt;/td&gt;
&lt;td&gt;🔖 &lt;code&gt;:bookmark:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Novo recurso&lt;/td&gt;
&lt;td&gt;✨ &lt;code&gt;:sparkles:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Lista de ideias (tasks)&lt;/td&gt;
&lt;td&gt;🔜 &lt;code&gt;:soon:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bugfix&lt;/td&gt;
&lt;td&gt;🐛 &lt;code&gt;:bug:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Documentação&lt;/td&gt;
&lt;td&gt;📚 &lt;code&gt;:books:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Testes&lt;/td&gt;
&lt;td&gt;🧪 &lt;code&gt;:test_tube:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Acessibilidade&lt;/td&gt;
&lt;td&gt;♿ &lt;code&gt;:wheelchair:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Adicionando um teste&lt;/td&gt;
&lt;td&gt;✅ &lt;code&gt;:white_check_mark:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Teste de aprovação&lt;/td&gt;
&lt;td&gt;✔️ &lt;code&gt;:heavy_check_mark:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Acessibilidade&lt;/td&gt;
&lt;td&gt;♿ &lt;code&gt;:wheelchair:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Texto&lt;/td&gt;
&lt;td&gt;📝 &lt;code&gt;:pencil:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Package.json em JS&lt;/td&gt;
&lt;td&gt;📦 &lt;code&gt;:package:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Em progresso&lt;/td&gt;
&lt;td&gt;🚧 &lt;code&gt;:construction:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Arquivos de configuração&lt;/td&gt;
&lt;td&gt;🔧 &lt;code&gt;:wrench:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Removendo uma dependência&lt;/td&gt;
&lt;td&gt;➖ &lt;code&gt;:heavy_minus_sign:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Adicionando uma dependência&lt;/td&gt;
&lt;td&gt;➕ &lt;code&gt;:heavy_plus_sign:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Revertendo mudanças&lt;/td&gt;
&lt;td&gt;💥 &lt;code&gt;:boom:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Alterações de revisão de código&lt;/td&gt;
&lt;td&gt;👌 &lt;code&gt;:ok_hand:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Refatoração&lt;/td&gt;
&lt;td&gt;♻️ &lt;code&gt;:recycle:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mover/Renomear&lt;/td&gt;
&lt;td&gt;🚚 &lt;code&gt;:truck:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Acessibilidade&lt;/td&gt;
&lt;td&gt; ♿ ♿&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Deploy&lt;/td&gt;
&lt;td&gt;🚀 &lt;code&gt;:rocket:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Segurança&lt;/td&gt;
&lt;td&gt;🔒️ &lt;code&gt;:lock:&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  6. Exemplos:💻
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Comando Git&lt;/th&gt;
&lt;th&gt;Resultado no GitHub&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":tada: Commit inicial"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;🎉 Commit inicial&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":books: docs: Atualização do README"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;📚 docs: Atualização do README&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":bug: fix(modal): Loop infinito na linha 50"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;🐛 fix: Loop infinito na linha 50&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":sparkles: feat: Página de login"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;✨ feat: Página de login&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":zap: perf: Melhoria no tempo de resposta"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;⚡ perf: Melhoria no tempo de resposta&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":boom: fix: Revertendo mudanças ineficientes"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;💥 fix: Revertendo mudanças ineficientes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":lipstick: feat!: Estilização CSS do formulário"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;💄 feat: Estilização CSS do formulário&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":test_tube: test: Criando novo teste"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;🧪 test: Criando novo teste&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":bulb: docs: Comentários sobre a função LoremIpsum( )"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;💡 docs: Comentários sobre a função LoremIpsum( )&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":broom: cleanup: Eliminando blocos de código comentados e variáveis não utilizadas na função de validação de formulário"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;🧹 cleanup: Eliminando blocos de código comentados e variáveis não utilizadas na função de validação de formulário&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;git commit -m ":wastebasket: remove: Removendo arquivos não utilizados do projeto para manter a organização e atualização contínua"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;🗑️ remove: Removendo arquivos não utilizados do projeto para manter a organização e atualização contínua&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Conclusão
&lt;/h2&gt;

&lt;p&gt;Padronizar mensagens de commit pode parecer um detalhe pequeno, mas faz toda a diferença na organização e manutenção de um projeto. Usando Conventional Commits (com ou sem emojis), o histórico do repositório se torna mais claro, facilitando revisões e colaboração em equipe.&lt;/p&gt;

&lt;p&gt;Se você ainda não segue um padrão, experimente adotar essa prática e veja como ela pode melhorar seu fluxo de trabalho!&lt;/p&gt;

&lt;p&gt;💖 Obrigado por ler, escrevi este artigo no intuito de ajudar os Devs e também registrar mais um dos meus aprendizados. &lt;br&gt;
Sinta-se à vontade para interagir e comentar.&lt;/p&gt;

</description>
      <category>git</category>
      <category>commit</category>
      <category>pattern</category>
      <category>webdev</category>
    </item>
    <item>
      <title>TypeScript: Diferença entre type e interface</title>
      <dc:creator>Fernanda Sayuri</dc:creator>
      <pubDate>Thu, 30 Jan 2025 02:58:59 +0000</pubDate>
      <link>https://forem.com/fernandasayuri/typescript-diferenca-entre-type-e-interface-5hkc</link>
      <guid>https://forem.com/fernandasayuri/typescript-diferenca-entre-type-e-interface-5hkc</guid>
      <description>&lt;p&gt;Se você usa React e TypeScript, provavelmente já se perguntou: qual a diferença entre type e interface? 🤔&lt;br&gt;
Muitas vezes vejo que no dia a dia muitos devs escolhem usar um ou outro de forma arbitrária pois para a maioria dos casos acaba não tendo nenhum impacto real.&lt;/p&gt;
&lt;h2&gt;
  
  
  1. Uso
&lt;/h2&gt;

&lt;p&gt;💡 &lt;code&gt;Types&lt;/code&gt; são mais flexíveis, usado para definir um alias para um tipo.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;type Person = {
  name: string;
  age: number;
};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Além disso, type pode definir uniões de tipos, interface não.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;type Status = "success" | "error" | "loading";
interface Status = "success" | "error" | "loading"; // ❌ Erro
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;💡 &lt;code&gt;Interfaces&lt;/code&gt; são ideais para definir a estrutura de objetos e podem ser estendidas com extends, facilitando a reutilização, utilizado para definir um contrato para um objeto.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;interface User {
  name: string;
  age: number;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2. Herança
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;Interface&lt;/code&gt; permite herança múltipla através de extends.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;interface Employee extends Person {
  email: string;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;Type&lt;/code&gt; usa interseção (&amp;amp;) para combinar tipos.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;type Employee = Person &amp;amp; {
  email: string;
};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3. Qual Usar?
&lt;/h2&gt;

&lt;p&gt;✔ Use interface quando estiver lidando com objetos e precisar de extensibilidade.&lt;br&gt;
✔ Use type quando precisar de uniões de tipos, interseções, funções ou retorno de apis.&lt;/p&gt;

&lt;p&gt;No geral, interfaces são preferidas para objetos, enquanto type é mais flexível para outras situações.&lt;/p&gt;

&lt;p&gt;💖 Obrigado por ler, sinta-se à vontade para comentar e interagir!&lt;/p&gt;

</description>
      <category>typescript</category>
      <category>javascript</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Compiling 2025: Metas e planejamento como Frontend</title>
      <dc:creator>Fernanda Sayuri</dc:creator>
      <pubDate>Tue, 28 Jan 2025 00:58:12 +0000</pubDate>
      <link>https://forem.com/fernandasayuri/compiling-2025-metas-e-planejamento-como-frontend-ibg</link>
      <guid>https://forem.com/fernandasayuri/compiling-2025-metas-e-planejamento-como-frontend-ibg</guid>
      <description>&lt;p&gt;&lt;em&gt;Esta é uma submissão para o &lt;a href="https://dev.to/challenges/newyear"&gt;desafio de escrita de ano novo de 2025&lt;/a&gt;: Compilando 2025.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Oi, eu sou a Fernanda Sayuri. Trabalho como desenvolvedora front-end há 5 anos. Gostaria de compartilhar minhas ambições e metas para 2025.&lt;br&gt;
Todo começo de ano adoro pensar e planejar minhas metas para o ano, me sinto energizada e ansiosa para enfrentar novas oportunidades e desafios. Ano novo, vida nova.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Escrita e Criação de Conteúdo:
&lt;/h2&gt;

&lt;p&gt;Sempre gostei de falar e escrever. Já até dei algumas palestras e workshops de desenvolvimento, mas sem muito comprometimento ou com uma frequência definida.&lt;br&gt;
🚀Este ano, é muito importante para mim escrever artigos técnicos e criar conteúdo educacional que possa ajudar outras pessoas. Quero que seja algo que se encaixe na minha rotina e quero ganhar mais maturidade no assunto.&lt;br&gt;
✨A meta é escrever pelo menos 2 artigos técnicos sobre tecnologia por mês.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Planejamento: upskilling e novas habilidades
&lt;/h2&gt;

&lt;p&gt;Pensei em separar o plano de ação em trimestres, pois para mim cada mês tem um ritmo e assim consigo pensar em uma média de entregas.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Q1:

&lt;ul&gt;
&lt;li&gt;Criar um portfólio.&lt;/li&gt;
&lt;li&gt;Finalizar estudos sobre Lerna e NX monorepo para versionamento de componentes do Design System.&lt;/li&gt;
&lt;li&gt;Upskilling sobre Webpack, Babel, Husky e Gulp.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Q2:

&lt;ul&gt;
&lt;li&gt;Aprender sobre Strapi CMS.&lt;/li&gt;
&lt;li&gt;Upskilling de testes de ponta a ponta, Cypress e TDD.&lt;/li&gt;
&lt;li&gt;Q3:&lt;/li&gt;
&lt;li&gt;Aprender sobre Strapi CMS.&lt;/li&gt;
&lt;li&gt;Estudar sobre Microfrontend.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Q4:

&lt;ul&gt;
&lt;li&gt;Quero obter alguma certificação AWS, GitHub ou Meta Front End Developer.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Aspirações de carreira:
&lt;/h2&gt;

&lt;p&gt;📒Melhorar meu papel de liderança tecnológica, assumindo mais responsabilidade pelo crescimento da equipe e gestão de projetos, e para isso, iniciar uma pós-graduação na área.&lt;br&gt;
Contribua para projetos relevantes que se alinhem com minha paixão por inovação e resolução de problemas, especialmente nas áreas de sistemas de design e acessibilidade.&lt;/p&gt;

&lt;h2&gt;
  
  
  Vamos fazer acontecer
&lt;/h2&gt;

&lt;p&gt;💖 Obrigado por ler, desejo a você um ótimo ano!&lt;br&gt;
Sinta-se à vontade para interagir e comentar.&lt;br&gt;
Quais são suas metas para 2025? ✨&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>newyearchallenge</category>
      <category>career</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Compiling 2025: Goals and planning as Frontend</title>
      <dc:creator>Fernanda Sayuri</dc:creator>
      <pubDate>Sun, 19 Jan 2025 05:25:27 +0000</pubDate>
      <link>https://forem.com/fernandasayuri/compiling-2025-goals-and-planning-as-frontend-pke</link>
      <guid>https://forem.com/fernandasayuri/compiling-2025-goals-and-planning-as-frontend-pke</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/newyear"&gt;2025 New Year Writing challenge&lt;/a&gt;: Compiling 2025.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Hi, I'm Fernanda Sayuri. I've been working as a Frontend developer for 5 years. I'd like to share my ambitions and goals for 2025.&lt;br&gt;
Every beginning of the year I love thinking and planning my goals for the year, I feel energized and eager to face new opportunities and challenges. New year, new life.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Writing and Content Creation:
&lt;/h2&gt;

&lt;p&gt;I've always enjoyed speaking and writing. I've even given some talks and development workshops, but without much commitment and with a defined frequency.&lt;br&gt;
🚀This year, it's very important for me to write technical articles and create educational content that can help other people. I want it to be something that fits into my routine and I want to gain more maturity in the subject.&lt;br&gt;
✨The goal is to write at least 2 technical articles about technology per month.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Planning: upskilling and new skills
&lt;/h2&gt;

&lt;p&gt;I thought about separating the action plan into quarters, because for me each month has a rhythm and this way I can think about an average of deliveries.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Q1:

&lt;ul&gt;
&lt;li&gt;Create a portfolio.&lt;/li&gt;
&lt;li&gt;Finalize studies on Lerna and NX monorepo for versioning of Design System components.&lt;/li&gt;
&lt;li&gt;Upskilling about Webpack, Babel, Husky and Gulp.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Q2: 

&lt;ul&gt;
&lt;li&gt;Learn about Strapi CMS.&lt;/li&gt;
&lt;li&gt;Upskilling end-to-end testing, Cypress and TDD.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Q3:

&lt;ul&gt;
&lt;li&gt;Learn about Strapi CMS.&lt;/li&gt;
&lt;li&gt;Study about Microfrontend.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Q4: 

&lt;ul&gt;
&lt;li&gt;I want to get some AWS, GitHub or Meta Front End Developer certification.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Career Aspirations:
&lt;/h2&gt;

&lt;p&gt;📒Improve my technological leadership role, taking on more responsibility for team growth and project management, and to do so, start a postgraduate degree in the area.&lt;br&gt;
Contribute to relevant projects that align with my passion for innovation and problem solving, especially in the areas of design systems and accessibility.&lt;/p&gt;

&lt;h2&gt;
  
  
  Let's make it happen
&lt;/h2&gt;

&lt;p&gt;💖 Thanks for reading, I wish you a great year! &lt;br&gt;
Feel free to interact and comment.&lt;br&gt;
What are your goals for 2025? ✨&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>newyearchallenge</category>
      <category>career</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Como criar fonte de ícones</title>
      <dc:creator>Fernanda Sayuri</dc:creator>
      <pubDate>Fri, 03 Mar 2023 01:45:54 +0000</pubDate>
      <link>https://forem.com/fernandasayuri/como-criar-fonte-de-icones-2k5i</link>
      <guid>https://forem.com/fernandasayuri/como-criar-fonte-de-icones-2k5i</guid>
      <description>&lt;p&gt;Para realizar a criação de font utilizei o site &lt;a href="https://fontello.com/" rel="noopener noreferrer"&gt;Fontello&lt;/a&gt;, mas também existem outros sites como alternativa.&lt;/p&gt;

&lt;p&gt;Salve todas as imagens que deseja como ícone no formato SVG e arraste na seção "Custom Icons".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fll1eqwsm63zn6lbssa04.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fll1eqwsm63zn6lbssa04.png" alt=" " width="800" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Resultado com todos os ícones importados e selecionados.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F1cmrim2mzg2r6ie0swuu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F1cmrim2mzg2r6ie0swuu.png" alt=" " width="800" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Na aba "Customize Names" é possível ver todos os ícones importado e verificar o nome de cada um, é importante lembrar que não são suportados caractéres especiais, além disso, podemos definir o nome da fonte.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F68mgqvjkcx4vd44v6xnw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F68mgqvjkcx4vd44v6xnw.png" alt=" " width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após isso, é necessário fazer o dowload da font, extrair a pasta e importar no projeto a pasta CSS e fonts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fr3hqrr31tf8ki1kova5v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fr3hqrr31tf8ki1kova5v.png" alt=" " width="800" height="322"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No projeto é preciso importar o css gerado.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Ff6tnirwqle8eysknam6e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Ff6tnirwqle8eysknam6e.png" alt=" " width="800" height="203"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora só usar seus ícones passando eles como classe onde desejar.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fvncw5p0inftrrteypnxi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fvncw5p0inftrrteypnxi.png" alt=" " width="800" height="161"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por fim, também é possível criar classes globais auxiliares para configurar o tamanho dos ícones utilizando a propriedade font-size.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fpcbzx9llnz2z11siftk8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fpcbzx9llnz2z11siftk8.png" alt=" " width="661" height="847"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
