All Projects → iddan → React Spreadsheet

iddan / React Spreadsheet

Licence: mit
Simple, customizable yet performant spreadsheet for React

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to React Spreadsheet

J
❌ Multi-format spreadsheet CLI (now merged in http://github.com/sheetjs/js-xlsx )
Stars: ✭ 343 (-12.72%)
Mutual labels:  excel, spreadsheet, csv, data
Sheetjs
📗 SheetJS Community Edition -- Spreadsheet Data Toolkit
Stars: ✭ 28,479 (+7146.56%)
Mutual labels:  excel, spreadsheet, csv, data
jupyterlab-spreadsheet-editor
JupyterLab spreadsheet editor for tabular data (e.g. csv, tsv)
Stars: ✭ 72 (-81.68%)
Mutual labels:  csv, excel, spreadsheet
Meza
A Python toolkit for processing tabular data
Stars: ✭ 374 (-4.83%)
Mutual labels:  excel, csv, data
Rio
A Swiss-Army Knife for Data I/O
Stars: ✭ 467 (+18.83%)
Mutual labels:  excel, csv, data
Dataproofer
A proofreader for your data
Stars: ✭ 628 (+59.8%)
Mutual labels:  excel, spreadsheet, csv
Volbx
Graphical tool for data manipulation written in C++/Qt
Stars: ✭ 187 (-52.42%)
Mutual labels:  spreadsheet, csv, data
Django Rest Pandas
📊📈 Serves up Pandas dataframes via the Django REST Framework for use in client-side (i.e. d3.js) visualizations and offline analysis (e.g. Excel)
Stars: ✭ 1,030 (+162.09%)
Mutual labels:  excel, spreadsheet, csv
Rows
A common, beautiful interface to tabular data, no matter the format
Stars: ✭ 739 (+88.04%)
Mutual labels:  excel, csv, data
Vscode Data Preview
Data Preview 🈸 extension for importing 📤 viewing 🔎 slicing 🔪 dicing 🎲 charting 📊 & exporting 📥 large JSON array/config, YAML, Apache Arrow, Avro, Parquet & Excel data files
Stars: ✭ 245 (-37.66%)
Mutual labels:  excel, csv, data
sheet2dict
Simple XLSX and CSV to dictionary converter
Stars: ✭ 206 (-47.58%)
Mutual labels:  csv, excel, spreadsheet
EPPlus4PHP
an easy-to-use excel library for php project which is compiled with peachpie. NOT FOR THE COMMON PHP PROJECT!
Stars: ✭ 15 (-96.18%)
Mutual labels:  excel, spreadsheet
rowy
Open-source Airtable-like experience for your database (Firestore) with GCP's scalability. Build any automation or cloud functions for your product. ⚡️✨
Stars: ✭ 2,676 (+580.92%)
Mutual labels:  excel, spreadsheet
Exporter
Lightweight Exporter library
Stars: ✭ 384 (-2.29%)
Mutual labels:  csv, data
dbd
dbd is a database prototyping tool that enables data analysts and engineers to quickly load and transform data in SQL databases.
Stars: ✭ 30 (-92.37%)
Mutual labels:  csv, excel
Google-Data-Analytics-Professional-Certificate
Quizzes & Assignment Solutions for Google Data Analytics Professional Certificate on Coursera. Also included a few resources on side that I found helpful.
Stars: ✭ 19 (-95.17%)
Mutual labels:  data, excel
Unioffice
Pure go library for creating and processing Office Word (.docx), Excel (.xlsx) and Powerpoint (.pptx) documents
Stars: ✭ 3,111 (+691.6%)
Mutual labels:  excel, spreadsheet
Sq
swiss-army knife for data
Stars: ✭ 275 (-30.03%)
Mutual labels:  excel, csv
ExcelFormulaBeautifier
Excel Formula Beautifer,make Excel formulas more easy to read,Excel公式格式化/美化,将Excel公式转为易读的排版
Stars: ✭ 27 (-93.13%)
Mutual labels:  excel, spreadsheet
Poiji
🍬 A tiny library converting excel rows to a list of Java objects based on Apache POI
Stars: ✭ 255 (-35.11%)
Mutual labels:  excel, data

React Spreadsheet

Simple, customizable yet performant spreadsheet for React.

Screenshot FOSSA Status CI Coverage Status

npm install react-spreadsheet

or

yarn add react-spreadsheet

Features

  • Simple straightforward API focusing on common use cases while keeping flexibility
  • Performant (yet not virtualized)
  • Implements Just Components™

Demo

Usage

Getting Started

import React from "react";
import Spreadsheet from "react-spreadsheet";

const data = [
  [{ value: "Vanilla" }, { value: "Chocolate" }],
  [{ value: "Strawberry" }, { value: "Cookies" }],
];

const MyComponent = () => <Spreadsheet data={data} />;

Custom Components

import React from "react";
import Spreadsheet from "react-spreadsheet";

const RangeView = ({ cell }) => (
  <input
    type="range"
    value={cell.value}
    disabled
    style={{ pointerEvents: "none" }}
  />
);

const RangeEdit = ({ cell, onChange }) => (
  <input
    type="range"
    onChange={(e) => {
      onChange({ ...cell, value: e.target.value });
    }}
    value={cell.value || 0}
    autoFocus
  />
);

const data = [
  [{ value: "Flavors" }],
  [({ value: "Vanilla" }, { value: "Chocolate" })],
  [{ value: "Strawberry" }, { value: "Cookies" }],
  [
    { value: "How much do you like ice cream?" },
    { value: 100, DataViewer: RangeView, DataEditor: RangeEdit },
  ],
];

const MyComponent = () => <Spreadsheet data={data} />;

Prior Art

  • React Datasheet - Heavily inspired by, enhanced performance and API, no formulas
  • React Spreadsheet Grid - Virtualized, lacks significant UI parts, no formulas
  • Handsonetable - Virtualized, lacks dynamic customization. React Spreadsheet uses it's formulas parsing module

License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].