Uma opção simples baseada na biblioteca exceljs para criar planilhas.

Overview

NODE-SHEET

GitHub repo size GitHub language count GitHub forks Bitbucket open issues

A simple option based on the exceljs library to create spreadsheets.

Disclaimer

The project is under development and is not fit to be used in real projects.

🚀 Installing node-sheet

To install the node-sheet, simply turn the command:

npm install node-sheet

or

yarn add node-sheet

Using node-sheet

Here's an example of how to create a basic spreadsheet

import { Workbook, Worksheet } from 'node-sheet'

void (async () => {
  const workbook = new Workbook();
  const worksheet = new Worksheet('Test page');

  worksheet.setColumns([
    {
      key: 'col-a',
    },
    {
      key: 'col-b',
    },
    {
      key: 'col-c',
    },
  ]);

  worksheet.addRows([
    {
      'col-a': 'Column A',
      'col-b': 'Column B',
      'col-c': 'Column C',
    },
    {
      'col-a': 'Column A',
      'col-b': 'Column B',
      'col-c': 'Column C',
    },
  ]);

  workbook.addWorksheet(worksheet);

  await workbook.export('test-sheet.xlsx');
})();

You can insert multiple pages into a worksheet. To create a new page, create a new page instance.

new Worksheet('Page name');

Define the columns that you will use in your worksheet with the setColumns method.

const workbook = new Workbook();
const worksheet = new Worksheet('Page name');

worksheet.setColumns([
  {
    key: 'col-a',
    // You can explore some styles within the object
    // but your implementation may contain bugs
  },
  {
    key: 'col-b',
  },
  {
    key: 'col-c',
  },
]);

After you define the columns, you can insert columns by setting the keys. Each key represents a cell in a row and is not required making the cell empty.

const workbook = new Workbook();
const worksheet = new Worksheet('Page name');

worksheet.setColumns([
  {
    key: 'col-a',
    // You can explore some styles within the object
    // but your implementation may contain bugs
  },
  {
    key: 'col-b',
  },
  {
    key: 'col-c',
  },
]);

worksheet.addRows([
  {
    'col-a': 'Column A',
    'col-b': 'Column B',
    'col-c': 'Column C',
  },
  {
    'col-a': 'Column A',
    'col-b': 'Column B',
    'col-c': 'Column C',
  },
]);

After you insert all the rows you want, insert the page into the worksheet.

const workbook = new Workbook();
const worksheet = new Worksheet('Page name');

worksheet.setColumns([
  {
    key: 'col-a',
    // You can explore some styles within the object
    // but your implementation may contain bugs
  },
  {
    key: 'col-b',
  },
  {
    key: 'col-c',
  },
]);

worksheet.addRows([
  {
    'col-a': 'Column A',
    'col-b': 'Column B',
    'col-c': 'Column C',
  },
  {
    'col-a': 'Column A',
    'col-b': 'Column B',
    'col-c': 'Column C',
  },
]);

workbook.addWorksheet(worksheet);

// Export the spreadsheet
await workbook.export('test-sheet.xlsx');

📫 Contributing to node-sheet

To contribute node-sheet, follow these steps:

  1. Fork this repository.
  2. Create a branch: git checkout -b <nome_branch>.
  3. Make your changes and confirm them: git commit -m '<mensagem_commit>'
  4. Climb your changes: git push
  5. Create the pull request.

Alternatively, see the GitHub documentation at how to create a pull request.

🤝 Contributors

We thank the following people who contributed to this project:

Foto do Pedro Henrique no GitHub
Pedro Henrique
You might also like...

Uma aplicação criada com react-native para armazenar as skills dos usuários cadastrados.

Uma aplicação criada com react-native para armazenar as skills dos usuários cadastrados.

SkillsClass Aplicação focada no gerenciamento de skills dos usuários cadastrados. Uma aplicação desenvolvida no ignite da Rocketseat com alguns toques

Dec 25, 2021

Uma aplicação back-end para listar e verificar se o dia é um feriado de acordo com os feriados registrados no sistema

Holydayzer Sobre Uma aplicação back-end para listar e verificar se o dia é um feriado de acordo com os feriados registrados no sistema. Como rodar Exe

Mar 9, 2022

Uma aplicação back-end para consumo e envio de frases/mensagens semelhante ao twitter.

Tweteroo Uma aplicação back-end utilizando o nodemon para rodar o servidor e o express para consumo e envio de frases/mensagens. Rodar projeto Após cl

Feb 3, 2022

Uma aplicação criada para tirar dúvidas

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: ya

Apr 26, 2022

Criei uma série de exercícios para ajudar as pessoas que estão começando com programaçao em javaSript

Pratique-js Antes do desenvolvimento ⏮️ 1 - Faça o clone do repositório na sua máquina utilizando ssh ou https git clone 2 - Instale o npm npm insta

Jul 27, 2022

Uma calculadora de fórmulas Bhaskaras para equações de segundo grau.

Uma calculadora de fórmulas Bhaskaras para equações de segundo grau.

Calculadora Bhaskara Ajustes e melhorias O projeto ainda está em desenvolvimento e as próximas atualizações serão voltadas nas seguintes tarefas: Conc

May 22, 2022

Uma api para encurtador url com typescript e Clean architecture.

Lyck 🔗 🖇️ Esta e a parte de backend de um encurtador de link que estou a desevolver. tecnologias 🔧 🛠️ Express. Joi. Uuid. Module-alias. BcryptJs.

Jan 28, 2022

Uma aplicação pomodoro conectada com a API do Spotify, para tornar o seu estudo mais dinâmico. Topics Stars

Uma aplicação pomodoro conectada com a API do Spotify, para tornar o seu estudo mais dinâmico.  Topics Stars

Demo | Tecnologias | Iniciando | Projeto | Layout | Demo 🧪 Tecnologias Esse projeto foi feito com as seguintes tecnologias. NextJS Next Auth TypeScri

Aug 9, 2022

Projeto de uma aplicação financeira pessoal para estudo de tecnologias.

This is a Next.js project bootstrapped with create-next-app. Getting Started First, run the development server: npm run dev # or yarn dev Open http://

Jun 8, 2022
Owner
Pedro Henrique
Node.js Developer
Pedro Henrique
API desenvolvida em NodeJs sem o uso de framewors e, utilizando o google planilhas para armazenamento de dados

NodeJS + Google SpreadSheet Catálogo online de produtos ??️ O Projeto Desenvolver uma API de busca de informações como preço médio, marca e categoria,

Arthur Couto 10 Jul 14, 2022
O Web-Chat é um projeto com o intuito de criar um chat de ajuda, que contém uma experiência dinâmica e salva as informações preenchidas pelo usuário usando um formulário.

Web-Chat Introdução O Web-Chat é um projeto com o intuito de criar um chat de ajuda, que contém uma experiência dinâmica e salva as informações preenc

BiaGrenzel 5 Oct 5, 2022
Rede social baseada no ShareMe para compartilhamento e download de fotos em React,Sanity.io e TailWindCSS

Photophan ?? Descrição phothopan é uma rede social para o compartilhamento e download de imagens,foi desenvolvida utilizando React(Frontend),Sanity(Ba

Bruno Ariel 2 Jan 8, 2022
Um projeto feito utilizando a biblioteca React para entrada e saída de custos e serviços realizados.

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

Vinícius 3 Mar 9, 2022
Página da Web que tem uma calculadora simples utilizando CSS Grid, JavaScript e HTML

Calculadora-Oline Calculadora exibida online via HTML e CSS, com foco no CSS Grid. Utilizei quatro (sub)grids dentro de uma principal, a qual engloba

João Vitor Esposte Campos 3 Nov 21, 2022
Uma simples linguagem de programação implementada em JavaScript.

[Projeto descontinuado] Vou estudar alguns conceitos muito importantes que aprendi ao implementar essa linguagem e, possivelmente, vou criar uma lingu

Erick Augusto 5 Aug 17, 2022
Repositório criado para prática do dia 14/05 utilizando nodeJs, express, nodemon e MVC. Como base utilizamos o modelo ER criado para uma locadora de filmes fictícia.

gamabuster Repositório criado para prática do dia 14/05 utilizando nodeJs, express, nodemon e MVC. Como base utilizamos o modelo ER criado para uma lo

Délio Costa 3 May 18, 2022
O objetivo dessa aplicação era criar um frontend feito totalmente em Javascript, sem nenhum arquivo HTML ou CSS pré-criado. Além disso, esse projeto também é o frontend da minha API 100% NodeJS.

Projeto HTML 100% Javascript Front-end feito "sem HTML" Conteúdos ➜ Sobre o projeto ➜ O que aprendi ➜ Como usar ?? Sobre o projeto Voltar ao topo O ob

João Victor Negreiros 19 Aug 3, 2021
Uma Intranet que permite um acesso restrito e promove a integração dos processos de uma empresa, facilitando o dia-a-dia dos seus colaboradores.

Intranet ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROJETO: DESENVOLVIMENTO WEB FRONT-END 1 SEMESTRE Uma Intranet que permite um acesso restrito e promove

Análise e Desenvolvimento de Sistemas - PUC Minas Virtual 5 Jun 1, 2022
Uma empresa especializada em listar prestadores para reformas mais próximo de você.

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: ya

null 3 Sep 22, 2021