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

csv-import-data

v1.1.3

Published

Biblioteca destinada ao tratamento de importação de dados via arquivo csv para objetos em Javascript.

Downloads

3

Readme

csv-import-data

Está é uma biblioteca que foi proposta como solução a uma problemática encontrada, e a problemática é a seguinte: dada uma planilha de dados em formato .csv, desejasse extrair os dados da mesma em formato json ou melhor dizendo, em notações Javascript. Quando me deparei com esse problema tive que realizar muitas pesquisas para chegar a uma solução viável, assim decidi implementar esta biblioteca, com esse compilado de entendimentos e soluções encontradas por mim, para a mesma sirva para mais pessoas na comunidade que venha a passar por esse problema. A biblioteca pode ser acessada no npm procurando pelo nome da mesma ou clicando aqui.

Tecnologias utilizadas no projeto

  • NodeJs
  • Javascript
  • FileReader

Exemplos de uso da biblioteca

Funcionalidades da biblioteca

  • transformDataCsv

    • Onde basicamente já sem fez a leitura prévia do arquivo .csv, e deseja transformar/converter/transferir e etc, os dados do .csv para notação em Javascript, ou melhor dizendo em JSON.
  • importDataFromCsv

    • Quando não foi feito nada com .csv, apenas a obtenção do mesmo, com essa função é possível realizar a leitura e parseamento do mesmo, para daí realizar a transformação dos dados contidos no mesmo, essa função faz uso do módulo FileReader para realizar a leitura e parseamento do arquivo .csv.

Como utilizar a biblioteca

Primeiramente realizar a instalação da biblioteca em seu projeto, como segue abaixo algumas formas:

npm i csv-import-data              # Opção 01
npm install csv-import-data        # Opção 02
yarn add csv-import-data           # Opção 03

Após isso, a mesma já estará em seu projeto, para a utilizar é simples, como irei expor nos exemplos abaixo:

  • Realizar a importação da biblioteca:

    import { importDataFromCsv, transformDataCsv } from "csv-import-data";
  • Utilizar a biblioteca:

    Função transformDataCsv:

    import { transformDataCsv } from "csv-import-data";
    
    /*
     Aqui assumisse que foi feita a leitura do csv de alguma forma. E que o mesmo está atribuído a uma variável chamada data.
    */
    
    const result = transformDataCsv(data);
    
    console.log(result);

    Assumindo que o arquivo .csv tenha sido uma tabela como essa abaixo:

    | name | age | | ------- | -------- | | Sebartião | 21 | | Irineu | 33 |

    O retorno vindo da biblioteca e que será impresso no console do código de exemplo acima, será o seguinte:

    [
        {
            "name": "Sebartião",
            "age": 21
        },
        {
            "name": "Irineu",
            "age": 33
        }
    ]

    Assumindo um .csv um pouco diferente do exposto acima, onde o mesmo contêm campos dispostos em lista ou array, como o seguinte:

    | animal | brothers | | ------- | -------- | | Patolino | Goku,Freeza,Cell | | Perna Longa | Pikachu,Mew |

    O retorno vindo da biblioteca e que será impresso no console do código de exemplo acima, será o seguinte:

    [
        {
            "animal": "Patolino",
            "brothers": ["Goku", "Freeza", "Cell"]
        },
        {
            "animal": "Perna Longa",
            "brothers": ["Pikachu", "Mew"]
        }
    ]

    Onde pode-se observar que a biblioteca realiza o tratamento de valores dispostos em formato de array também. Desde de que estejam seguindo os princípios de valores em lista em .csv, que é dentro de aspas duplas separados por vírgula, onde a tabela acima estruturalmente estaria assim:

    animal,brothers
    Patolino,"Goku,Freeza,Cell"
    Perna Longa,"Pikachu,Mew"

    Função importDataFromCsv:

    import { importDataFromCsv } from "csv-import-data";
    
    /*
     Aqui assumisse que foi feito o pré-carregamento do arquivo .csv. E que o mesmo está atribuído a uma variável chamada data.
    */
    
    const result = importDataFromCsv(data);
    
    console.log(result);

    O resultado de saída serãos os mesmos que foram expostos mais acima.

Observações

  • A biblioteca ainda está em desenvolvimento e evolução, assim podem ser encontrados bugs em seu uso, caso encontre algum, sinta-se a vontade de reportar o mesmo comigo, seja enviando um e-mail para o e-mail presente na última seção deste readme, ou mesmo abrindo uma issue aqui no GitHub mesmo em criar issue.

  • A função transformDataCsv, já está bem madura e testada, o que não ocorre com a importDataFromCsv, pois necessita-se de mais alguns testes com a mesma.

  • Caso queira contribuir com o projeto, sinta-se a vontade, abrindo issues, pull request, sugerindo melhorias e etc.

CASO QUEIRA SABER MAIS SOBRE O PROJETO

Pode entrar em contato comigo pelo seguinte email: [email protected].