Starter code for node packages based on https://amenallah.com/node-js-typescript-jest-express-starter/
- Node.js
- Typescript
- Jest
- Eslint
- Prettier
- VsCode Debug config
git clone
echo "Rename you root folder"
mv ts-start-node "YOUR_PACKAGE_NAME"
cd "YOUR_PACKAGE_NAME"
echo "Delete .git folder and init a new one for you if needed"
rm -rf .git && git initAdditionally, edit package.json according to your needs
"name": "YOUR_PACKAGE_NAME",
"description": "YOUR_PACKAGE_DESCRIPTION",
"repository": {
"type": "git",
"url": "ssh://git@github.com:USER/YOUR_PACKAGE_NAME.git"
},
//Only for Github Registry, delete it for NPM
"publishConfig": {
"registry": "https://npm.pkg.github.com"
},echo "Clone inside packages folder"
cd packages && git clone
echo "Rename you root folder"
mv ts-start-node "YOUR_PACKAGE_NAME"
cd "YOUR_PACKAGE_NAME"
echo "Delete .git folder"
rm -rf .gitAdditionally, edit package.json according to your needs
"name": "YOUR_PACKAGE_NAME",
"description": "YOUR_PACKAGE_DESCRIPTION",
"repository": {
"type": "git",
"url": "ssh://git@github.com:USER/YOUR_PACKAGE_NAME.git",
"directory": "packages/YOUR_PACKAGE_NAME" // <-- 👁
},
//Only for Github Registry, delete it for NPM
"publishConfig": {
"registry": "https://npm.pkg.github.com"
},If using a local dependency (another package inside packages folder)
- Use lerna to declare the reference. From the monorepo root folder run
yarn lerna add NEW_DEPENDENCY_PACKAGE_NAME --scope=TARGET_PACKAGE_NAME - Edit
tsconfig.jsonto declare the new local dependency and help code navigation totssources files, not to compiledjsones"paths": { "*": ["node_modules/"], "typings/*": ["src/*"], "PACKAGE_NAME":["PACKAGE_NAME/src/main.ts"] //<-- 👁 }
Pablo Escalada, January 2020