Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
react-json-view
Advanced tools
Interactive react component for displaying javascript arrays and JSON objects.
The react-json-view package is a React component for displaying and editing JSON data in a user-friendly way. It provides a variety of features to manipulate JSON data, including expanding/collapsing nodes, editing values, adding/removing nodes, and more.
Display JSON Data
This feature allows you to display JSON data in a structured and readable format. The JSON data is passed to the `src` prop of the `ReactJson` component.
import React from 'react';
import ReactJson from 'react-json-view';
const App = () => {
const jsonData = {
name: "John Doe",
age: 30,
address: {
street: "123 Main St",
city: "Anytown"
}
};
return <ReactJson src={jsonData} />;
};
export default App;
Edit JSON Data
This feature allows users to edit JSON data directly in the view. The `onEdit` prop is used to handle the edit events, providing the edited data as a parameter.
import React from 'react';
import ReactJson from 'react-json-view';
const App = () => {
const jsonData = {
name: "John Doe",
age: 30,
address: {
street: "123 Main St",
city: "Anytown"
}
};
const handleEdit = (edit) => {
console.log('Edited:', edit);
};
return <ReactJson src={jsonData} onEdit={handleEdit} />;
};
export default App;
Add/Remove JSON Nodes
This feature allows users to add or remove nodes in the JSON data. The `onAdd` and `onDelete` props are used to handle the add and delete events, respectively.
import React from 'react';
import ReactJson from 'react-json-view';
const App = () => {
const jsonData = {
name: "John Doe",
age: 30,
address: {
street: "123 Main St",
city: "Anytown"
}
};
const handleAdd = (add) => {
console.log('Added:', add);
};
const handleDelete = (del) => {
console.log('Deleted:', del);
};
return <ReactJson src={jsonData} onAdd={handleAdd} onDelete={handleDelete} />;
};
export default App;
Expand/Collapse Nodes
This feature allows users to expand or collapse nodes in the JSON data. The `collapsed` prop can be set to `true` to collapse all nodes by default.
import React from 'react';
import ReactJson from 'react-json-view';
const App = () => {
const jsonData = {
name: "John Doe",
age: 30,
address: {
street: "123 Main St",
city: "Anytown"
}
};
return <ReactJson src={jsonData} collapsed={true} />;
};
export default App;
The jsoneditor package is a web-based tool to view, edit, format, and validate JSON data. It provides a rich set of features for manipulating JSON data, including a tree view, code view, and text view. Compared to react-json-view, jsoneditor offers more advanced editing capabilities and multiple views for JSON data.
The react-json-tree package is a React component for rendering JSON data as a tree structure. It focuses on providing a simple and lightweight way to display JSON data. While it does not offer editing capabilities like react-json-view, it is a good choice for read-only JSON data visualization.
The react-json-pretty package is a React component for pretty-printing JSON data. It provides a clean and readable format for displaying JSON data. Unlike react-json-view, it does not support editing or interactive features, making it suitable for static JSON data display.
Interactive react component for displaying javascript arrays and JSON objects.
This component provides a responsive interface for displaying arrays or JSON in a web browser. NPM offers a distribution of the source that's transpiled to ES5; so you can include this component with any web-based javascript application.
// import the react-json-view component
import ReactJson from 'react-json-view'
// use the component in your app!
<ReactJson src={my_json_object} />
Install this package with npm:
npm install --save react-json-view
Or add to your package.json config file:
"dependencies": {
"react-json-view": "latest"
}
Name | Type | Default | Description |
---|---|---|---|
src | JSON Object | None | This property contains your input JSON |
name | string | "root" | Contains the name of your root node |
theme | string | "rjv-default" | RJV supports base-16 themes. Check out the list of supported themes here. A custom "rjv-default" theme applies by default. |
indentWidth | integer | 4 | Set the indent-width for nested objects |
collapsed | boolean | false | When set to true , all nodes will be collapsed by default |
enableClipboard | boolean | true | When set to true , the user can copy objects and arrays to clipboard |
displayObjectSize | boolean | true | When set to true , objects and arrays are labeled with size |
displayDataTypes | boolean | true | When set to true , data type labels prefix values |
onEdit | (edit) => {} | false | When a callback function is passed in, value edits are enabled. The callback is invoked when edits are made. |
src
variableRJV now supports base-16 themes!
You can specify a theme
prop when you instantiate your rjv component.
<ReactJson src={my_important_json} theme="monokai" />
Check out the list of supported themes here.
cd react-json-view
npm install
npm run dev:hot
You can use Docker to run the source code in a local development environment:
docker build -t react-json-view .
sudo
to run docker commandscd react-json-view
./docker/dev-server.sh
sudo
to run the server fileYour source code will be mounted inside the docker container. The container is built on the standard Node image.
Webpack-dev-server is running in the container and hot-reloading when changes are made locally.
All node modules are installed within the container, so make sure to rebuild your container if you make changes to package.json (see step 3, above).
onEdit
is enabledonEdit
is enabledFAQs
Interactive react component for displaying javascript arrays and JSON objects.
We found that react-json-view demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.