1.0.9 • Published 12 months ago

phiineas-json-parsify v1.0.9

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

JSON Parser

A simple JSON parser built in TypeScript that converts JSON strings into an Abstract Syntax Tree (AST) and can extract specific properties from the parsed data.

Features

  • Tokenizes JSON strings into tokens.
  • Parses tokens into an Abstract Syntax Tree (AST).
  • Handles objects, arrays, strings, numbers, booleans, and null values.
  • Extracts specific data from the parsed JSON.

Test Locally

Clone the Project

https://github.com/phiineas/JSON-Parsify.git

Navigate to the Project Directory

cd JSON-Parsify

Install Dependencies

npm install

Build the Project

npm run build

Run Tests

npm test

You can add JSON test files in the data/tests directory and update the parser.test.ts to reflect your test cases.

Usage

Running Locally

  • To run the JSON parser locally and see the parsed data:
  1. Ensure you have a JSON file located at data/tests/step1/valid.json.

  2. Use the following command to start the application:

npm run dev
  1. You will be prompted to enter the key you want to search for. Enter the key and press Enter. To exit the script, type exit and press Enter.
Enter the key to search for (or type "exit" to quit): 
name
name: Hardin Ellis
Enter the key to search for (or type "exit" to quit): 
age
age: 30

By default, this will read the JSON file located at data/tests/step1/valid.json. Modify the main.ts file to specify different paths or file names if needed.

Use as a package

To install the package, use the following command:

npm i phiineas-json-parsify
  • Import the parser
import { JSONParsify } from 'phiineas-json-parsify';
  • Parse a JSON string
const jsonString = '{"name": "Hardin Ellis", "age": 30}';
const parser = new JSONParsify();
const ast = parser.parse(jsonString);
console.log(ast);
  • Extract specific data
const jsonString = '{"name": "Hardin Ellis", "age": 30}';
const parser = new JSONParsify();
const ast = parser.parse(jsonString);
const name = parser.extract(ast, 'name');
console.log(`name: ${name}`);
1.0.9

12 months ago

1.0.8

12 months ago

1.0.7

12 months ago

1.0.6

12 months ago

1.0.5

12 months ago

1.0.4

12 months ago

1.0.3

12 months ago

1.0.2

12 months ago

1.0.1

12 months ago

1.0.0

12 months ago