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

coral-ui

v2.0.0

Published

Biblioteca de components criada pelo Design System para os produtos da Pulse criada em react-native

Downloads

53

Readme

DS Mobile

Features

  • Expo
  • Typescript
  • Storybook web/mobile
  • Shopify/Restyle
  • Eslint/Prettier
  • Theme-based
  • Husky
  • Bob - Builder

Biblioteca de componentes em React native feita com a biblioteca Restyle do Shopify, permitindo e facilitando desenvolvimento baseado em temas e props utilitárias de estilo.

<Box backgroundColor="primary" mt={2} p={3}>
  <Text color="textInverted" fontFamily="Roboto, sans-serif">
    Branded box with white text inside
  </Text>
</Box>

Este setup utiliza Storybook com Expo.

Iniciando

  1. yarn - Instala as dependências
  2. yarn web - Inicia o Storybook em visualização Web no browser padrão
  3. yarn android - Inicia o Storybook em visualização no dispositivo ou emulador Android
  4. yarn ios - Inicia o Storybook em visualização no dispositivo ou emulador ios

Consumindo a lib como cliente

  1. yarn add @ds/mobile --registry=http://verdaccio.mateus/ - Instalando a biblioteca
  2. yarn add typeface-{font-name} ou import /font/*.ttf - Instalando a fonte de sua preferência react-native-vector-icons
  3. yarn add react-native-vector-icons - Instale o pacote de icones
  4. npx react-native link react-native-vector-icons faça o link dos icones e reinecie o emulador
  5. Faça o import do themeProvider e o tema de sua preferência utilizando o exemplo destacado abaixo:
import React from 'react';
import App from './App';

import {ThemeProvider, themeInstitucional, Box} from 'coral-ui';

const App = () => {
  return (
    <ThemeProvider theme={themeInstitucional}>
      <App />
    </ThemeProvider>
  );
};

export default App;
  1. yarn start --reset-cache inicie o servidor limpando o cache do metro bundle
  2. yarn android instale o .apk em modo debug
  3. Enjoy 😎!

Rodando em dispositivos nativos (Android/IOS)

  1. yarn start - Inicia o Expo no browser
  2. Espere o bundle da aplicação. Pode demorar um pouco.
  3. Use o QR code do Expo para abrir a aplicação em um dispositivo (ou pressione i para abrir um simulador, caso esteja disponível)

📁 Estrutura de Arquivos

Storybook com Expo CLI
├── assets ➡️ Assets estáticos do projeto
├── App.tsx ➡️ Entry Point universal para aplicações Expo
├── app.config.js ➡️ Arquivo de configuração do Expo
└── babel.config.js ➡️ Configuração do Babel (utiliza `babel-preset-expo`)

Adicionando stories ao Storybook

  1. Crie um arquivo no diretório do componente chamado ComponentName.stories.tsx.
  2. Utilizamos CSF (Component Story Format), que nos permite exportar stories e testar em outros contextos:
// Text.stories.tsx

import React from "react";
import { storiesOf } from "@storybook/react-native";
// Import your component
import Text from "./Text";

// Define your component and it's name
export default {
  title: "Text",
  component: Text,
};

// Stories
export const Basic = () => <Text>What's up</Text>;
export const Colored = () => <Text color="red">What's up</Text>;

// Isto é necessário para ser mostrado no Expo
// Adiciona todos os stories ao Storybook RN/Expo
storiesOf("Text", module).add("Basic", Basic).add("Colored", Colored);
  1. Você deve conseguir visualizar o Storybook na web apenas com o comando expo web. Mas para vê-los nativamente, deve importar os stories diretamente no arquivo stories/index.js.

Pronto! Agora você já deve ser capaz de visualizar os stories do seu componente no Storybook web e nativo.

Semantic Release

Este projeto está configurado com Semantic-release para versionar automaticamente baseado nos commits e banches. Está configurado também com a CLI do Commitzen (yarn commit), que cria um commit convencional padronizado.

  1. Crie sua branch de trabalho: git checkout -b name-here
  2. Faça suas mudanças.
  3. git add seus arquivos.
  4. yarn commit para rodar a CLI do Commitzen.

Você poderá escolher entre feature, bug fix ou CI update, por exemplo. E adicionar sua mensagem de commit, assim como uma mensagem detalhada.

Após criar sua branch, crie um pull request (PR). Uma vez aprovado, será movido para uma branch de release (como next), e eventualmente mergeado na master.

Todo

  • [ ] Snapshot testing
  • [ ] Unit testing

📝 Notas