Skip to content

pankaj-kumar-yadav/convert-desk

Repository files navigation

Convert Desk

XLSX to JSON Converter

License: MIT Next.js TypeScript Tailwind CSS

A modern, client-side Excel to JSON converter built with Next.js 15, featuring advanced mapping capabilities, drag-and-drop functionality, and real-time preview. Transform your Excel data with custom key mapping, data type conversion, and manual value insertion - all processed securely in your browser.

Table of Contents

Project Overview

The XLSX to JSON Converter is a powerful, privacy-focused web application that allows users to convert Excel files (.xlsx, .xls) to JSON format with advanced customization options. Built with modern web technologies, it processes files entirely on the client-side, ensuring your data never leaves your browser.

Goals

  • Provide a secure, client-side Excel to JSON conversion tool
  • Offer advanced mapping and customization capabilities
  • Deliver a modern, intuitive user experience
  • Support large file processing with memory management
  • Enable batch operations and conversion history

Target Audience

  • Data analysts and scientists
  • Developers working with Excel data
  • Business users needing data format conversion
  • Anyone requiring secure, offline data processing

Problem It Solves

Traditional Excel to JSON converters often require uploading sensitive data to external servers, lack advanced mapping features, or have poor user experiences. This tool addresses these issues by providing:

  • 100% client-side processing for maximum privacy
  • Advanced key mapping with drag-and-drop reordering
  • Real-time preview and validation
  • Memory management for large files
  • Persistent conversion history

Features

Core Functionality

  • Drag & Drop File Upload: Intuitive file selection with visual feedback
  • Multi-Sheet Support: Select and convert specific worksheets
  • Real-time Excel Preview: View your data before conversion
  • Advanced Key Mapping: Map Excel columns to custom JSON keys
  • Data Type Conversion: Automatic or manual data type selection (string, number, boolean)
  • Manual Value Insertion: Add custom values and auto-increment fields
  • Row Range Selection: Convert specific row ranges with slider controls

Advanced Features

  • Drag & Drop Reordering: Reorganize JSON field order with intuitive drag-and-drop
  • Conversion History: Local storage-based history with download capabilities
  • Memory Management: Built-in memory monitoring and optimization suggestions
  • Theme Customization: Multiple color themes and custom color configuration
  • Responsive Design: Optimized for desktop, tablet, and mobile devices
  • Persistent State: Maintains selected worksheet across browser sessions

User Experience

  • Modern UI: Glass-morphism design with smooth animations
  • Progress Indicators: Visual feedback for all operations
  • Error Handling: Comprehensive error messages and recovery options
  • Accessibility: WCAG compliant with keyboard navigation support
  • Performance Optimized: Efficient rendering for large datasets

Installation

Prerequisites

  • Node.js 18.x or higher
  • npm 9.x or higher (or yarn 1.22.x)

Step-by-Step Setup

  1. Clone the repository

    git clone https://github.com/pankaj-kumar-yadav/convert-desk.git
    cd convert-desk
  2. Install dependencies

    npm install
    
    # or
    
    yarn install
    
    # or
    
    pnpm install
  3. Start the development server

    npm run dev
    
    # or
    
    yarn dev
    
    # or 
    
    pnpm dev
  4. Open your browser Navigate to http://localhost:3000

Build for Production

# Build the application

npm run build

# Start the production server

npm run start

Usage

Basic Conversion

  1. Upload Excel File

    • Drag and drop your .xlsx or .xls file onto the upload area
    • Or click to browse and select your file
  2. Select Worksheet

    • Choose the specific worksheet you want to convert
    • Preview the data in the table view
  3. Configure Mapping

    • Add mappings for Excel columns to JSON keys
    • Set data types (auto, string, number, boolean)
    • Add manual values or auto-increment fields
  4. Convert and Download

    • Click "Convert to JSON" to process your data
    • Copy the JSON output or download as a file

Advanced Features

Custom Key Mapping

// Example mapping configuration
{
"excel_column": "Name",
"json_key": "full_name",
"data_type": "string"
}

Manual Values

// Add custom fields
{
"json_key": "created_at",
"manual_value": "2024-01-01",
"data_type": "string"
}

Auto-increment Fields

// Auto-incrementing ID field
{
"json_key": "id",
"auto_increment": true,
"data_type": "number"
}

Screenshots

Main Interface Main conversion interface with file upload

Mapping Configuration Advanced key mapping with drag-and-drop

Conversion Results JSON output with copy and download options

Contributing

We welcome contributions from the community! Here's how you can help:

Reporting Issues

  1. Search existing issues to avoid duplicates
  2. Use the issue template when creating new issues
  3. Provide detailed information including:
    • Steps to reproduce
    • Expected vs actual behavior
    • Browser and OS information
    • Screenshots if applicable

Feature Requests

  1. Check the roadmap to see if the feature is already planned
  2. Open a feature request with detailed description
  3. Explain the use case and potential implementation

Contact

Maintainer

Project Links

Project Status

🟢 Active Development - This project is actively maintained and developed.

Current Version

  • Version: 1.0.0
  • Last Updated: Augest 2025
  • Next Release: Q3 2025

Made with ❤️ by PankajKumar Yadav

If you find this project helpful, please consider giving it a ⭐ on GitHub!

About

Convert Desk is a browser-based Excel to JSON converter focused on privacy and speed. Users can drag and drop .xlsx/.xls files, map columns, and preview results in real time—all processed client-side, so data never leaves your device.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors