This project is a React-based web application that allows users to format JSON data, convert it into various formats (like CSV), and download the formatted data. It's an ideal tool for developers who need to quickly inspect and manipulate JSON data.
- JSON Formatting: Paste JSON data and get it formatted with customizable indent spacing.
- Conversion to CSV: Convert JSON data into CSV format using PapaParse and download the file.
- Load JSON from URL: Fetch JSON data directly from a URL and format it.
- Customizable Indentation: Choose the amount of indent spacing for your formatted JSON.
- Error Handling: Basic error handling for invalid JSON input and fetch failures.
- React.js: Frontend framework for building the UI.
- Tailwind CSS: Utility-first CSS framework for styling.
- PapaParse: JavaScript library for parsing CSV data and converting JSON to CSV.
- Fetch API: To fetch JSON data from external URLs.
To get started with the project, follow these steps:
-
Clone the repository:
git clone https://github.com/akshatbhj/jsonflow
-
Navigate to the project directory:
cd jsonflow
-
Install the dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser:
Navigate to
http://localhost:PORT
to view the application.
- Paste JSON Data: Enter or paste your JSON data into the provided text area.
- Choose Indentation: Select the amount of indent spacing you want for formatting.
- View Formatted JSON: The formatted JSON will be displayed in the output container.
- Enter JSON Data: Paste or load JSON data from a URL.
- Click on "Convert Data": The JSON will be converted into CSV format.
- Download the CSV: Click the "Download" button to download the converted CSV file.
- Click "Fetch JSON": Enter a URL from which to fetch JSON data.
- Submit: The fetched JSON data will be displayed and can be formatted or converted.
Contributions are welcome! Feel free to submit a pull request or open an issue to improve the project.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or suggestions, feel free to reach out:
- GitHub: akshatbhj
- Email: [email protected]