2.0.0 • Published 5 months ago

quick-excel-json v2.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

šŸ“Š Excel to JSON Converter

Easily convert Excel (.xlsx, .xls, .csv) files into JSON format using this lightweight and efficient package and a simple and lightweight npm package that allows you to convert JSON data into an Excel (.xlsx, .xls) file using the xlsx (SheetJS) library.

šŸš€ Installation

Install the package using npm or yarn:

npm install quick-excel-json
yarn add quick-excel-json

šŸ“– Usage

import { useState } from 'react';
import { fileHandler, handleExportHandler } from "quick-excel-json";

// JSON data for testing
const jsonData = [
  { id: 1, name: "Ali", age: 25 },
  { id: 2, name: "Vali", age: 30 },
  { id: 3, name: "Hasan", age: 28 }
];

function Example() {
  const [excelFile, setExcelFile] = useState(null);
  const [jsonFile, setJsonFile] = useState(null);
  const [data, setData] = useState([]);

  // excel to json
  const handleFile = async () => {
    try {
      const result = await fileHandler(excelFile);
      setData(result);
    } catch (error) {
      console.error("Error reading file:", error);
    }
  }

  // json to excel
  const handleExport = () => {
    if (jsonFile) {
      handleExportHandler(jsonFile); // sending json data
    }
  };

  // json to excel
  const handleExportWithoutFile = () => {
    handleExportHandler(jsonData); // sending json data
  };

  return (
     <>
      <div>
        <div style={{ display: "flex", alignItems: "center", justifyContent: "space-between", gap: "12px" }}>
          <div>
            <input
              type="file"
              accept='.xls, .xlsx, .csv'
              id='upload_file'
              onClick={e => e.target.value = null}
              onChange={event => setExcelFile(event.target.files[0])}
            />
            <button type='button' onClick={handleFile}>Convert to JSON format</button>
          </div>

          <div style={{ width: "2px", height: "30px", background: "#000" }}></div>

          <div style={{ display: "flex", alignItems: "center", gap: "12px" }}>
            <input
              type="file"
              accept='.json'
              id='upload_file'
              onClick={e => e.target.value = null}
              onChange={event => setJsonFile(event.target.files[0])}
            />
            <button onClick={handleExport}>Export to Excel with file</button>
            <button onClick={handleExportWithoutFile}>Export to Excel without file</button>
          </div>
        </div>

        <pre>
          {data}
        </pre>
      </div>
    </>
  )
}

export default Example;

Example

Click here to view. here

šŸŽÆ Features

āœ… Supports .xlsx, .xls, .csv formats āœ… Works in both React and Node.js āœ… Fast and lightweight āœ… Convert JSON to Excel (.xlsx) format
āœ… Easy to use with React & Node.js
āœ… No external dependencies (only xlsx)

Development

To contribute or make changes, clone the repository and install dependencies:

git clone https://github.com/hikmatjan1/from_excel_to_json.git
cd from_excel_to_json
npm install

Run the development server:

npm run dev

Keywords

quick-excel-json, excel, xlsx, xls, csv, json, excel-to-json, json-to-excel, json, json-to-sheet, xlsx-to-json,convert json to excel, csv-to-json, excel-parser, convert excel to json, spreadsheet to json, json to spreadsheet, spreadsheet, data-converter, excel-to-json-converter,json-to-excel-converter, exceljs, sheetjs,jsonjs, json extractor, fast excel parser,fast json parser, react excel parser, react json parser, sheet-to-json, exceljs-transform,xlsx-json-parser, json-xlsx-parser, excel-to-json-converte"

šŸ“œ License MIT