api
docs
env
git
hbs
html
husky
jest
lintstaged
lisp
prettier
python
react
readme
schema
style
util
vue
web
$ tmpl node init
Initialize a node project.
Files
project
└─src
└──index.js
└─.babelrc
└─package.json
└─webpack.config.js
↑ index.js
const main = () => {console.log("Node Working");};if (require.main === module) {main();}
↑ .babelrc
{"presets": ["@babel/preset-env"]}
↑ package.json
{"name": "project","version": "0.0.0","description": "","scripts": {"start": "babel-node ./src/index.js"},"keywords": [],"author": "developer<developer@developer.dev>","license": "ISC","dependencies": {},"devDependencies": {"@babel/core": "^7.12.13","@babel/node": "^7.12.13","@babel/preset-env": "^7.12.13","babel-core": "^7.0.0-bridge.0","babel-loader": "^8.2.2","webpack-cli": "^3.3.12","webpack": "^4.44.2"}}
↑ webpack.config.js
// Toolsconst path = require("path");// Plugins// Variables - Directory Targetconst dir = path.resolve(__dirname);const srcDir = path.join(dir, "src");const distDir = path.join(dir, "dist");const nodeModulesDir = path.join(dir, "node_modules");// Variables - File Targetsconst srcIndex = "index.js";// Variables - Environmentconst webpackMode = process.env.NODE_ENV === "production" ? "production" : "development";const isProduction = webpackMode === "production";// Main Webpack Configmodule.exports = {target: "node",mode: webpackMode,entry: path.join(srcDir, srcIndex),output: {path: path.resolve(distDir),filename: "[name].js"},resolve: {alias: [],extensions: [".js", ".json"],mainFields: ["main", "module"],plugins: []},module: {rules: [{test: /.(js|jsx)$/,use: "babel-loader",exclude: /node_modules/}]},plugins: []};