Read a JSON file and print clean formatted output.
You are required to build a CLI tool using Node.js that reads a JSON file and prints formatted JSON to the terminal.
The tool should accept a JSON file path from the terminal. If the user does not pass a file path, it should print a friendly error.
Create a file called user.json with this content:
Create another file called broken.json with this content:
This file is missing the final }. Keep it broken so you can test the error path.
Here are some example commands you can run to test your CLI:
On successful execution, the output should look like this:
If the file contains invalid JSON, print a friendly error:
If the file cannot be read, print this error:
If the user does not pass a file path, print this error:
Errors should go to stderr, and the command should set a non-zero exit code.
The goal of this project is to practice reading files, parsing JSON, handling invalid data, and printing clean output that another command could redirect into a file.
You will need these Node.js APIs:
process.argv to read the file path from the terminal.
node:fs/promises to read the file contents.
JSON.parse() to turn JSON text into a JavaScript value.
JSON.stringify() to print formatted JSON.
Join the Community
roadmap.sh is the most starred project on GitHub and is visited by hundreds of thousands of developers every month.
Roadmaps Best Practices Guides Videos FAQs YouTube
roadmap.sh by @kamrify @kamrify
Community created roadmaps, best practices, projects, articles, resources and journeys to help you choose your path and grow in your career.
Login or Signup
You must be logged in to perform this action.