npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@captalys-platform/essentials-production-kit

v1.1.3

Published

Essential dependencies to Captalys Front-End projects

Downloads

47

Readme

Essentials Production Kit

Conjunto de pacotes para desenvolver um projeto front-end do time de Engenharia de Interfaces na Captalys.

Este pacote faz parte do kit de dependências de produção.

Kit de dependências

Os kits de dependências foram criados para centralizar os pacotes utilizados nos projetos de front-end e facilitar a atualização de versão dos mesmos, além de reduzir o dependency hell, que acontece quando pacotes diferentes dependem de um mesmo pacote, mas em versões diferentes. Isso cria um ciclo onde um upgrade pode resolver um problema de compatibilidade, mas criar outro, que se resolvido, volta a causar o primeiro problema. Centralizando as bibliotecas, conseguimos mapear e rastrear melhor qual versão podemos manter das dependências para que a aplicação siga estável.


Utilização

Instalando as dependências

Para instalar os pacotes, rodar na raiz do projeto:

npm install @captalys-platform/essentials-production-kit

ou

yarn @captalys-platform/essentials-production-kit

Importante: Todos os kits devem ser instalados na mesma versão para evitar incompatibilidades.

Como configurar o serviço com Typescript e ESLint

Basta adicionar a seguinte regra dentro do objeto rules do arquivo .eslintrc.js:

module.exports = {
  rules: {
    'import/no-extraneous-dependencies': [
      'error',
      {
        devDependencies: true,
        packageDir: [
          './', 
          'node_modules/@captalys-platform/essentials-production-kit/'
        ]
      },
    ],
  },
};

No caso de um monorepo, deve-se atentar se a biblioteca foi instalada para todo o workspace ou apenas para um projeto específico, alterando o caminho acima de acordo com a localização correta da instalação da biblioteca. No caso de caminhos complexos, recomenda-se utilizar a biblioteca path:

const path = require('path');

module.exports = {
  rules: {
    'import/no-extraneous-dependencies': [
      'error',
      {
        devDependencies: true,
        packageDir: [
          path.resolve(__dirname),
          path.resolve(__dirname, '..', '..', 'node_modules/@captalys-platform/essentials-production-kit'),
        ],
      },
    ],
  },
};

Desenvolvimento

Fluxo de desenvolvimento

  1. Partindo da branch staging, criamos uma nova branch com o comando git checkout -b <nome-da-nova-branch>

    :warning: Lembrando que o nome da branch deve conter o prefixo da atividade que estamos fazendo, podendo ser fix, que representa a correção de um bug, feature que representa a adição de uma nova funcionalidade ou housekeeping, que representa alguma refatoração de código. Após o prefixo adicionamos o character /, seguido do número da atividade gerado pelo Jira, seguido do nome da tarefa.

    Exemplo: fix/INTJOV-140-criar-pagina-de-login

  2. Após o desenvolvimento é necessário realizar o commit. É recomendável utilizar o comando git add -p, que ajudará a selecionar as porções de códigos referentes à cada commit.

  3. Após selecionar as porções de código, utilizar o comando git commit -m <titulo-do-commit>. Repita a operação até que todo o código esteja dentro de algum commit.

  4. Antes de finalizar, executar yarn log para gerar o changelog, preenchendo as informações referentes às mudanças realizadas. Ao finalizar, realize o commit do arquivo de log utilizando git add . e git commit -m <titulo-do-commit>.

  5. Quando todos os commit estiverem prontos, subir a tarefa no repositório remoto com o comando git push origin <nome-da-branch>.

    :information_source: Para mais informações sobre boas práticas no uso do Git, clique aqui

  6. Abrir um Pull Request (PR) para staging. Para isso, basta utilizar o link gerado no final do processo do comando anterior ou seguir os passos do seguinte link.

    :warning: Não se esqueça de utilizar o template definido no campo description, preencha todos os campos e indique duas pessoas para realizar o code review.

Style-guide

O guia de estilos deste projeto pode ser encontrado neste link.

Tarefas e prioridades

O board de tarefas pode ser encontrado nesse link. As tarefas geralmente são ordenadas por ordem de prioridade, considerando o topo como mais prioritárias. Entretanto é importante estar atento na propriedade prioridade de cada tarefa e nas reuniões de planejamento para estar atento às prioridades do projeto.


Dúvidas

Caso persistam as dúvidas, é possível buscar por informações na documentação do confluence.

Licença

© 2022 Captalys - Todos os direitos reservados.