Skip to content

A project that uses a style guide to create a style dictionary and use this to create components with the same design pattern.

Notifications You must be signed in to change notification settings

Marcosnto/design-components

Repository files navigation

Design Components

O projeto consiste na utilização de regras de design pré definidas para a criação de variáveis de estilos que serão utilizadas na construção de componentes.

Utilizando o style guide foi possível definir as propriedades em um arquivo JSON e a partir disso, utilizando o Style Dictionary, foram criadas as variáveis para as diversas plataformas (neste projeto foi definido somente para Web, ou seja, as variáveis são geradas somente no formato de SCSS).

Processo de aprendizado e escolhas

Style Dictionary

Utilizando a documentação do Style Dictionary pude compreender como funciona o framework e quais eram os seus objetivos. Para a parte de padronização do mesmo, procurei me guiar pelos projetos modelos que estão contidos no github. Não consegui obter muitas informações de boas práticas quanto a este framework, então parti de alguns pressupostos baseando-se em boas práticas de programação no geral.

Por default, o framework gera os arquivos na raiz do projeto, contudo, para uma melhor organização e manutenção do código resolvi criar um diretório style-dictionary que iria conter todos arquivos gerados, configurações e regras.

Na definição da estruturação das regras, resolvi separar pela propria categorização pré definida no JSON base: color, height, level e size. Agrupei os elementos que eram iguais e que mudavam somente a variação (ex: spacing) para que assim ficasse melhor identificar/alterar alguma propriedade.

Demais escolhas

No que diz respeito ao projeto como um todo, escolhi o Vite por ser um framework leve e prático, suficiente para o projeto. Para estruturação de pastas optei por criar um diretório components que contem cada componente e dentro de cada um desses suas respectivas sub-categorias (ex: Button/Primary).

Para a criação dos arquivos dos componentes segui a linha de separação de contextos, no qual cada diretório possui somente os arquivos respectivos a ele mesmo e que seguem a estrutura abaixo, pois assim conseguimos isolar e dar manutenção de forma mais específica.

  • index.jsx
  • style.scss (quando houver)
  • **.stories.js

Utilizei o Prettier e as regras pré-definidas do Vite no ESlint para conseguir ter uma boa organização e qualidade de código.

Languages

Frameworks & Libs

Execução

Para executar o projeto basta utilizar o comando abaixo:

yarn dev

Abra http://localhost:5173/ com o seu navegador para visualizar o projeto.

About

A project that uses a style guide to create a style dictionary and use this to create components with the same design pattern.

Topics

Resources

Stars

Watchers

Forks