json-to-plain-text
is a npm module that converts JSON-like data or plain JavaScript objects to a formatted plain text representation. It allows you to convert JSON-like data or plain JavaScript objects into human-readable format.
-
Install
json-to-plain-text
npm package.npm install json-to-plain-text
-
Import the
jsonToPlainText
function:import { jsonToPlainText } from "json-to-plain-text";
The jsonToPlainText
function accepts two parameters: data
and options
.
-
data
(required): The input data to convert. It can be JSON-like data or plain JavaScript objects. -
options
(optional): Configuration options for customizing the output. It is an object with the following properties:-
color
(boolean, default:true
): Whether to apply colors to the output or not. Set totrue
to add colors using thechalk
library orfalse
for plain text output. -
seperator
(string, default::
): seperate keys and values. -
spacing
(boolean, default:true
): Whether to include spacing before colons. Set totrue
for formatted spacing orfalse
to remove spacing before colons. -
squareBracketsForArray
(boolean, default:false
): Whether to use square brackets for arrays. Set totrue
to enclose arrays in square brackets orfalse
to display arrays without brackets. -
doubleQuotesForKeys
(boolean, default:false
): Whether to use double quotes for object keys. Set totrue
to wrap object keys in double quotes orfalse
to keep them as they are. -
doubleQuotesForValues
(boolean, default:false
): Whether to use double quotes for string values. Set totrue
to add double quotes around string values orfalse
to display them without quotes.
-
import { jsonToPlainText, Options } from "json-to-plain-text";
let data = {
place_id: "173937105",
osm_type: "way",
osm_id: "319992693",
lat: "17.861533866867224",
lon: "78.8081441896764",
display_name:
"Satadar Nagar, Ward 116 Allapur, Hyderabad, Kukatpally mandal, Telangana, 500018, India",
address: {
neighbourhood: "Satadar Nagar",
suburb: "Ward 116 Allapur",
city: "Hyderabad",
county: "Kukatpally mandal",
state: "Telangana",
postcode: "500018",
country: "India",
country_code: "in",
},
extratags: {},
namedetails: {},
boundingbox: ["17.8598497", "17.8623087", "78.8079136", "78.8082658"],
distance: 2,
};
// This is optional
const options: Options = {
color: true, // Whether to apply colors to the output or not
spacing: true, // Whether to include spacing before colons or not
seperator: ":", // seperate keys and values.
squareBracketsForArray: false, // Whether to use square brackets for arrays or not
doubleQuotesForKeys: false, // Whether to use double quotes for object keys or not
doubleQuotesForValues: false, // Whether to use double quotes for string values or not
}
// Convert the data to formatted plain text representation
const plainText = jsonToPlainText(data, options);
console.log(plainText);
place_id : 173937105
osm_type : way
osm_id : 319992693
lat : 17.861533866867224
lon : 78.8081441896764
display_name : Satadar Nagar, Ward 116 Allapur, Hyderabad, Kukatpally mandal, Telangana, 500018, India
address :
neighbourhood : Satadar Nagar
suburb : Ward 116 Allapur
city : Hyderabad
county : Kukatpally mandal
state : Telangana
postcode : 500018
country : India
country_code : in
extratags : {}
namedetails : {}
boundingbox : 17.8598497, 17.8623087, 78.8079136, 78.8082658
distance : 2
If you find my projects helpful or inspiring, consider supporting me through GitHub Sponsors. Your sponsorship helps me dedicate more time and effort to open source development and creating impactful projects.
- A huge thanks to my sponsors for their support.
This project is licensed under the MIT License - see the LICENSE file for details.