🔗 A lightweight JavaScript library that generates customizable tree views to better visualize, and edit, JSON data.
v3.1.0
What features does JsonTree.js have?
- 😏 Zero-dependencies and extremely lightweight!
- 🦾 Written in TypeScript, allowing greater support for React, Angular, and other libraries!
- 💻 Full API available via public functions.
- 📱 Fully styled in CSS/SASS, fully responsive, and compatible with the Bootstrap library!
- 🌈 Full CSS theme support (using :root variables), with dark and light themes.
- 🔍 20 types supported by default (such as Object, Array, primitive types, and even Sets and Maps).
- 🔣 Support to show the data types, array/object counts, comas, and opening symbols!
- ☑️ Fully configurable per DOM element!
- 📂 Close/Open all nodes.
- 🚀 Clickable values via custom triggers!
- ⭐ Custom value rendering.
- 📃 Array paging support (show array objects on different pages)!
- 💧 Drag & Drop JSON files support!
- 📋 Copy to clipboard (all JSON, or just the current page).
- ✏️ Full editing support (double click a value, property, index, or anywhere for everything).
- 🔠 Keyboard navigation keys support!
- 🎥 Toggle between regular and full-screen views.
- ❓ Assign tooltips to any JSON value!
Where can I find the documentation?
All the documentation can be found here.
What browsers are supported?
All modern browsers (such as Google Chrome, FireFox, and Opera) are fully supported.
What types are supported?
boolean
Booleansnumber
Numbersbigint
Big Integersstring
Stringsobject
Objectsarray
Arraysdate
Datesfloat
Floatsnull
Nullssymbol
Symbolsfunction
Functions and Lambdasundefined
Undefinedcolor
Colorsguid
GUIDsregexp
RegExpsmap
Mapsset
Setsurl
URLsimage
Imagesemail
Emailsany
Unknown
What languages are supported?
af
Afrikaansar
Arabichy
Armenianbe
Belarusianbn
Bengalibg
Bulgarianca
Catalanzh
Chinese (simplified)da
Danishnl
Dutchen
English (default)eo
Esperantoet
Estonianfa
Farsifi
Finnishfr
Frenchfy
Frisiangl
Galicianka
Georgiande
Germanel
Greekhe
Hebrewhi
Hindihu
Hungarianis
Icelandicid
Indonesianga
Irishit
Italianja
Japaneseko
Koreanlv
Latvianlt
Lithuanianlb
Luxembourgishms
Malayne
Nepalino
Norwegianpl
Polishpt
Portuguesero
Romaniansi
Sinhalesesk
Slovaksl
Slovenianes
Spanishsv
Swedishtl
Tagalogta
Tamilzh-tw
Taiwanesete
Teluguth
Thaitr
Turkishuk
Ukrainian
What are the most recent changes?
To see a list of all the most recent changes, click here.
How do I install JsonTree.js?
You can install the library with npm into your local modules directory using the following command:
npm install jjsontree.js
You can also use the following CDN links:
https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@3.1.0/dist/jsontree.min.js
https://cdn.jsdelivr.net/gh/williamtroup/JsonTree.js@3.1.0/dist/jsontree.js.min.css
How do I get started?
To get started using JsonTree.js, do the following steps:
1. Prerequisites:
Make sure you include the "DOCTYPE html" tag at the top of your HTML, as follows:
<!DOCTYPE html>
2. Include Files:
<link rel="stylesheet" href="dist/jsontree.js.css">
<script src="dist/jsontree.js"></script>
3. DOM Element Binding:
<div id="tree-1" data-jsontree-js="{ 'showCounts': true, 'data': [ true, false, 5, 10, 'A String' ] }">
Your HTML.
</div>
To see a list of all the available binding options you can use for "data-jsontree-js", click here.
To see a list of all the available custom triggers you can use for "data-jsontree-js", click here.
4. Finishing Up:
That's it! Nice and simple. Please refer to the code if you need more help (fully documented).
How do I go about customizing JsonTree.js?
To customize, and get more out of JsonTree.js, please read through the following documentation.
1. Public Functions:
To see a list of all the public functions available, click here.
2. Configuration:
Configuration options allow you to customize how JsonTree.js will function. You can set them as follows:
<script>
$jsontree.setConfiguration( {
safeMode: false
} );
</script>
To see a list of all the available configuration options you can use, click here.