Tartalomjegyzék

< Node.js

Csomag publikálása

Név választás

Válasszunk egy nevet, és keressünk rá a csomag nevére:

Ha nem foglalt, akkor folytassuk.

package.json

Hozzuk létre a package.json:

npm init -y

Szerkesszük:

package.json
{
  "name": "valami",
  "version": "0.0.1",
  "description": "csomag leírása",
  "bin": {
    "valami": "valami.js"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "Nagy János",
  "license": "MIT"
}

Tároló

{
  "repository": {
    "type": "git",
    "url": "https://github.com/valaki/valami.git"
  }  
}
package.json
{
  "name": "valami",
  "version": "0.0.1",
  "description": "csomag leírása",
  "bin": {
    "valami": "valami.js"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "Nagy János",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/valaki/valami.git"
  }  
}

Dokumentáció

Hozzuk létre egy README.md nevű fájlt. Írjuk le mi ez a csomag, és hogyan kell használni.

README.md
# Csomag
 
A csomagról ...

A parancs elkészítése

valami.js
#!/usr/bin/env node
 
console.log('működik')

Parancs kipróbálása

npm link

Linuxon:

sudo npm link

Linuxon létrejön egy link /usr/local/bin/valami könyvtárban. Ez a link a következő helyre mutat:

../lib/node_modules/mentol/valami.js

Az /usr/local/lib/node_modules/valami szintén egy link ami a felhasználó könyvtárába mutat, például:

/home/janos/dev/mentol

Hozzáférés

Készítsünk hozzáférést a webhelyen:

Feltöltés

Jelentkezzünk be:

npm login

Publikálás:

npm publish

Újabb publikáláshoz változtatni kell valamit a kódon és új verziószámot beírni a package.json fájlba.

Az npm create

Készítünk egy create-valami nevű NodeJS sablont.

Feltöltjük majd, így használjuk:

npm create valami

A sablon létrehozásakor hajtsuk végre az outfile.cjs scriptet:

package.json
  "bin": {
    "create-valami": "outfile.cjs"
  },
outfile.cjs
#!/usr/bin/env node
 
//...

Aktuális könyvtár olvasása

Ha olyan csomagot fejlesztünk, ami hatással lesz az a felhasználás helyére, akkor kérdéses lehet, hogyan kérdezzük le a felhasználás helyének aktuális könyvtárát, és hogyan kérdezzük le csomag saját könyvtárának útvonalát.

A csomag saját helyének lekérdezése:

const filePath = path.join(__dirname, 'package.json');

A felhasználás helyén, az aktuális könyvtár lekérdezése.

const currentDirectory = process.cwd();
const filePath = currentDirectory + '/package.json'

Linkek