Bird
Raised Fist0
Node.jsframework~10 mins

npm initialization and package.json in Node.js - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to initialize a new npm project with default settings.

Node.js
npm [1] -y
Drag options to blanks, or click blank then click option'
Ainit
Binstall
Cstart
Drun
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'npm install' instead of 'npm init' to create package.json
Forgetting the '-y' flag to accept defaults
2fill in blank
medium

Complete the JSON snippet to specify the main entry file in package.json.

Node.js
"main": "[1]"
Drag options to blanks, or click blank then click option'
Aindex.js
Bapp.json
CREADME.md
Dpackage.json
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'package.json' as main file
Using a non-JavaScript file like README.md
3fill in blank
hard

Fix the error in the package.json script to start the app with node.

Node.js
"scripts": { "start": "node [1]" }
Drag options to blanks, or click blank then click option'
Apackage.json
Bindex.js
Cnpm
Dstart.js
Attempts:
3 left
💡 Hint
Common Mistakes
Trying to run 'package.json' as a script
Using a file name that does not exist
4fill in blank
hard

Fill both blanks to add a dependency and save it to package.json.

Node.js
npm [1] express [2]
Drag options to blanks, or click blank then click option'
Ainstall
B--save-dev
C--save
Dupdate
Attempts:
3 left
💡 Hint
Common Mistakes
Using '--save-dev' instead of '--save' for regular dependencies
Using 'update' instead of 'install'
5fill in blank
hard

Fill all three blanks to create a script that runs tests with jest.

Node.js
"scripts": { "test": "[1] [2]" }, "devDependencies": { "[3]": "^29.0.0" }
Drag options to blanks, or click blank then click option'
Ajest
B--coverage
Dmocha
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'mocha' instead of 'jest' when jest is the intended test runner
Forgetting to add jest as a devDependency

Practice

(1/5)
1. What is the main purpose of running npm init in a Node.js project?
easy
A. To start the Node.js server automatically
B. To install all dependencies listed in package.json
C. To create a package.json file that manages project info and dependencies
D. To update Node.js to the latest version

Solution

  1. Step 1: Understand what npm init does

    Running npm init sets up a new Node.js project by creating a package.json file.
  2. Step 2: Identify the role of package.json

    This file stores project metadata, scripts, and dependencies for easy management.
  3. Final Answer:

    To create a package.json file that manages project info and dependencies -> Option C
  4. Quick Check:

    npm init creates package.json = A [OK]
Hint: Remember: npm init sets up package.json [OK]
Common Mistakes:
  • Confusing npm init with npm install
  • Thinking npm init starts the server
  • Assuming npm init updates Node.js
2. Which command quickly creates a package.json file with default values without asking questions?
easy
A. npm init -y
B. npm init
C. npm install
D. npm start

Solution

  1. Step 1: Recall npm init options

    npm init runs an interactive setup asking questions, while npm init -y skips questions and uses defaults.
  2. Step 2: Identify the command for quick setup

    The -y flag means "yes" to all prompts, creating package.json immediately.
  3. Final Answer:

    npm init -y -> Option A
  4. Quick Check:

    npm init -y = quick default package.json [OK]
Hint: Use -y flag for instant package.json creation [OK]
Common Mistakes:
  • Using npm init without -y for quick setup
  • Confusing npm install with npm init
  • Thinking npm start creates package.json
3. Given this package.json snippet:
{
  "name": "myapp",
  "version": "1.0.0",
  "scripts": {
    "start": "node app.js"
  }
}

What happens when you run npm start in the terminal?
medium
A. It shows an error because start script is missing
B. It runs the command node app.js to start the app
C. It creates a new package.json file
D. It installs all dependencies listed in package.json

Solution

  1. Step 1: Understand the scripts section in package.json

    The scripts object defines commands you can run with npm run or shortcuts like npm start.
  2. Step 2: Identify what npm start does here

    Since start is defined as node app.js, running npm start executes that command.
  3. Final Answer:

    It runs the command node app.js to start the app -> Option B
  4. Quick Check:

    npm start runs start script = D [OK]
Hint: npm start runs the start script in package.json [OK]
Common Mistakes:
  • Thinking npm start installs dependencies
  • Assuming npm start creates package.json
  • Believing npm start errors if start script exists
4. You ran npm init but accidentally pressed Enter on all prompts without typing anything. What will your package.json contain?
medium
A. A file with default values like name, version, and entry point
B. An empty file with no content
C. Only the dependencies section filled
D. An error message instead of a file

Solution

  1. Step 1: Understand npm init default behavior

    If you press Enter without typing, npm uses default values for each prompt (like project name, version, main file).
  2. Step 2: Identify the resulting package.json content

    The file will have default fields filled, not empty or error.
  3. Final Answer:

    A file with default values like name, version, and entry point -> Option A
  4. Quick Check:

    Empty inputs use defaults in package.json = B [OK]
Hint: Pressing Enter uses defaults, not empty file [OK]
Common Mistakes:
  • Expecting an empty package.json
  • Thinking npm init fails without input
  • Assuming dependencies auto-fill
5. You want to create a package.json for a project but also add a custom script named test that runs jest. Which steps correctly achieve this?
hard
A. Run npm test before creating package.json
B. Run npm install jest only, no need for package.json
C. Run npm init and type test when asked for project name
D. Run npm init -y then manually add "test": "jest" under scripts in package.json

Solution

  1. Step 1: Initialize project quickly

    Use npm init -y to create package.json with defaults fast.
  2. Step 2: Add custom test script

    Edit package.json to add "test": "jest" inside the scripts section.
  3. Step 3: Understand why other options are wrong

    Installing jest alone doesn't create package.json. Running npm test before setup fails. Typing 'test' as project name is incorrect usage.
  4. Final Answer:

    Run npm init -y then manually add "test": "jest" under scripts in package.json -> Option D
  5. Quick Check:

    Init with -y then add scripts manually = C [OK]
Hint: Init with -y then edit package.json scripts [OK]
Common Mistakes:
  • Skipping package.json creation
  • Confusing npm test with npm init
  • Misusing prompts during npm init