var fs = require('fs'); var csv = require('fast-csv'); var result = []; exports.seachByPin = function (pin, callback) { if (pin.length < 6 || pin.length > 6) return callback("Invalid PinCode"); var csvStream = csv.fromPath("pinCode.csv").on("data", function (data) { if (data[1] === pin) { result.push({ PinCode : data[1], OfficeName : data[0], DivisionName : data[4], RigionName : data[5], Taluk : data[7], DistrictName : data[8], StateName : data[9] }); } }).on("end", function () { return callback(result); }); }

{ "name": "pincode", "version": "1.0.0", "description": "Node module to easily loopkup Indian PinCode Information", "author": "Coding Defined <codingdefined@gmail.com> (http://www.codingdefined.com)", "main": "index.js", "dependencies": { "fast-csv": "0.6.0" }, "repository": { "type": "git", "url": "https://github.com/codingdefined/pincode.git" }, "keywords": [ "pincode", "pin", "india pin code" ], "license": "MIT", "bugs": { "url": "https://github.com/codingdefined/pincode/issues" }, "homepage" : "https://github.com/codingdefined/pincode" }

In this post we will be discussing about creating a NPM package and publish it. We will be writing a simple NodeJS program and then convert it to a NPM package. We will be creating a Indian Pincode NPM package which gives us the information about the pincode. This will be useful for people who wants to target all the areas in India.At first we will be creating a file named index.js. The contents of the file is shown below where we are reading a .csv file and then returning a callback with all the information of that pincode. Now to make the function searchByPin to be available to other files we have to export the function using exports.functionName.Full Code can be found at GitHub : https://github.com/codingdefined/pincode Next thing is to create a package.json file (to set different parameters for your package) and a readme file (to let user know about your package).Package.jsonAfter having all the files you have to publish the package. To publish the package just run npm publish command. After successfully pulishing you can check your package on npm. If your package is live then its successfully published. Our pincode package can be found at https://www.npmjs.com/package/pincode.If you are getting warning NodeJS - npm WARN package.json : No repository field while installing your npm package then refer How to Solve No repository field Warning in Node.js Please Like and Share the CodingDefined.com blog, if you find it interesting and helpful.