Files
dev-lab/README.md
T

69 lines
2.8 KiB
Markdown

# DevLab
A sophisticated, TypeScript-powered tool designed to parse JSON data and visualise **JSONPath** queries with precision. This tool allows developers to navigate complex data structures, highlight specific fields, and extract data efficiently.
## Access the App
You can use the live version of the application directly in your browser:
👉 **[https://dev-lab.onixbyte.dev](https://dev-lab.onixbyte.dev)**
## New Features
* **Interactive Tree Navigation**: Nodes can now be expanded or collapsed, making it easier to manage and analyse large, deeply nested JSON objects.
* **One-Click Extraction**: Seamlessly copy the data selected by your JSONPath expression to your clipboard with a single click.
* **Precise Highlighting**: Visual cues (using Tailwind CSS rings and background colours) indicate exactly which fields match your query.
## Overview
Working with large data responses can be cumbersome. This visualiser provides a structured "Live Preview" that mirrors the hierarchy of your data while allowing you to isolate and extract the information that matters most.
## Technical Details
### Collapsibility Logic
The tree component uses a recursive structure where each object or array node maintains its own local `isOpen` state. This ensures that toggling one section of the data does not interfere with the rest of the tree.
### Data Extraction
By utilising `jp.query(parsedJson, expression)`, the application gathers all matching values into a result array, which is then formatted and copied to the system clipboard using the modern `navigator.clipboard` API.
## Usage
1. **Paste** your JSON into the source editor.
2. **Enter** your JSONPath (e.g., `$..staff_members[?(@.active)]`).
3. **Navigate** the tree by clicking the expansion icons next to objects and arrays.
4. **Copy** the matching results using the "Copy Matches" button to use the filtered data elsewhere.
## Privacy & Security
We take data privacy seriously. **Your data never leaves your machine.**
* **Local Processing**: All JSON parsing and JSONPath queries are performed locally within your browser.
* **No Server Uploads**: The source code contains no functionality to upload your JSON data to any external servers, including our hosting provider (Vercel).
* **Secure Environment**: You can safely use this tool with sensitive configuration files or API responses without risk of data exposure.
## Getting Started
### Prerequisites
Ensure you have Node.js installed on your machine.
### Installation
1. Clone the repository
```bash
git clone https://github.com/onixbyte/dev-lab.git
cd dev-lab
```
2. Install dependencies
```bash
pnpm install
```
3. Run the development server
```bash
pnpm dev
```
---
*Developed with a focus on type safety and user experience.*