📋JSON Templates
package.json (npm/Node.js)
Standard package.json structure for Node.js projects with common fields.
Explanation
package.json defines your Node.js project metadata, dependencies, and scripts.
Examples
Basic Package
Output
{
"name": "my-project",
"version": "1.0.0",
"description": "My awesome project",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"scripts": {
"build": "tsc",
"test": "jest",
"start": "node dist/index.js"
},
"keywords": [
"nodejs",
"typescript"
],
"author": "Your Name",
"license": "MIT",
"dependencies": {
"express": "^4.18.0"
},
"devDependencies": {
"typescript": "^5.0.0",
"@types/node": "^20.0.0"
}
}Code Examples
package.json
{
"name": "my-package",
"version": "1.0.0",
"description": "Package description",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"exports": {
".": {
"import": "./dist/index.mjs",
"require": "./dist/index.js",
"types": "./dist/index.d.ts"
}
},
"scripts": {
"build": "tsc",
"test": "jest",
"lint": "eslint src"
},
"keywords": ["keyword1", "keyword2"],
"author": "Your Name",
"license": "MIT",
"engines": {
"node": ">=18.0.0"
}
}Try it Now
💡 Tips
- Use semantic versioning (semver)
- Specify engine requirements
- Use exports field for modern packages
- Add types field for TypeScript
- Include keywords for npm discoverability
- Use ^ for dependencies, exact for peer
⚠️ Common Pitfalls
- Don't commit package-lock.json for libraries
- Main field must point to built file
- Be careful with version ranges
- Test your package before publishing