New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

configure-express-app

Package Overview
Dependencies
Maintainers
1
Versions
97
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

configure-express-app - npm Package Compare versions

Comparing version 3.2.26 to 3.2.27

196

index.js
#!/usr/bin/env node
const createExpressApp = async () => {
const fs = require("fs");
const prompt = require("prompt-sync")();
const fs = require('fs');
const prompt = require('prompt-sync')();
const mainDir = "./app";
const mainDir = './app';

@@ -13,10 +13,10 @@ if (!fs.existsSync(mainDir)) {

} else {
console.log("Already app directory exist");
console.log('Already app directory exist');
}
const controllerDir = "./app/controllers";
const modelDir = "./app/models";
const routesDir = "./app/routes";
const configDir = "./config";
const serviceDir = "./service";
const middlewaresDir = "./middlewares"
const controllerDir = './app/controllers';
const modelDir = './app/models';
const routesDir = './app/routes';
const configDir = './config';
const serviceDir = './service';
const middlewaresDir = './middlewares';
if (!fs.existsSync(controllerDir)) {

@@ -26,3 +26,3 @@ fs.mkdirSync(controllerDir);

} else {
console.log("Already controller directory exist");
console.log('Already controller directory exist');
}

@@ -33,3 +33,3 @@ if (!fs.existsSync(modelDir)) {

} else {
console.log("Already model directory exist");
console.log('Already model directory exist');
}

@@ -51,6 +51,5 @@ if (!fs.existsSync(routesDir)) {

//console.log("routes directory created successfully !");
} else {
console.log('Already routes directory exist');
}
else {
console.log("Already routes directory exist");
}

@@ -64,12 +63,12 @@ let ProjectName = '';

const checkPackageDotJsonExistOrNot = "./package.json";
const checkPackageDotJsonExistOrNot = './package.json';
if (!fs.existsSync(checkPackageDotJsonExistOrNot)) {
console.log("\n");
ProjectName = prompt("Project Name : ").trim().replace(/\s+/g,'');
mainFileName = prompt("Main File Name : ").split('.')[0].trim().replace(/\s+/g,'');
authorName = prompt("Author Name : ").trim();
description = prompt("Description : ").trim();
console.log('\n');
ProjectName = prompt('Project Name : ').trim().replace(/\s+/g, '');
mainFileName = prompt('Main File Name : ').split('.')[0].trim().replace(/\s+/g, '');
authorName = prompt('Author Name : ').trim();
description = prompt('Description : ').trim();
alterProjectName = "Express App";
alterMainFilename = "server";
alterProjectName = 'Express App';
alterMainFilename = 'server';

@@ -79,3 +78,3 @@ const packageJsonFileContent = `{

"version": "1.0.0",
"description": \"${description ? description : ""}\",
"description": \"${description ? description : ''}\",
"main": \"${mainFileName ? mainFileName : alterMainFilename}.js\",

@@ -89,3 +88,3 @@ "scripts": {

},
"author": \"${authorName ? authorName : ""}\",
"author": \"${authorName ? authorName : ''}\",
"license": "ISC",

@@ -97,36 +96,43 @@ "dependencies": {

}`;
fs.writeFileSync("package.json", packageJsonFileContent);
fs.writeFileSync('package.json', packageJsonFileContent);
console.log(`\nYour Project Name is : ${ProjectName ? ProjectName : alterProjectName}`);
console.log(`Your Main File Name is : ${mainFileName ? mainFileName : alterProjectName}`);
// console.log(`\nYour Project Name is : ${ProjectName ? ProjectName : alterProjectName}`);
console.log(`\nYour Project Name is : ${ProjectName ? ProjectName : alterProjectName}`);
console.log(`Your Main File Name is : ${mainFileName ? mainFileName : alterProjectName}`);
// console.log(`\nYour Project Name is : ${ProjectName ? ProjectName : alterProjectName}`);
console.log("\nIf you want change your projectname means go and change in package.json\n\n");
console.log('\nIf you want change your projectname means go and change in package.json\n\n');
}
const config = require("./package.json");
const config = require('./package.json');
if (config?.main !== "") {
if (config?.main !== '') {
if (!fs.existsSync(`./${mainFileName ? mainFileName : alterMainFilename}`)) {
const portNumber = prompt('Port Number : ', 8080);
const port = isNaN(portNumber) ? 8080 : parseInt(portNumber);
const portNumber = prompt("Port Number : ", 8080)
const port = isNaN(portNumber) ? 8080 : parseInt(portNumber)
console.log(`Your express app port number is : ${port ? port : 8080}`);
const jsContent = `const express = require('express');\nconst helmet = require("helmet");\nrequire('dotenv').config();\nconst compression = require('compression');
\nconst app = express()\n\nconst helloWorldRoute = require('./app/routes/helloWorld.route');\nconst { requestId } = require('./service/uuidGenerator');\nconst { consoleWritter } = require('./service/consoleViewer');const notFound = require('./middlewares/notFound');
const erorrHandler = require('./middlewares/errorHandler');\n\nconst port = process.env.PORT\n
const jsContent = `'use strict';\n\nconst express = require('express');\nconst helmet = require("helmet");\nrequire('dotenv').config();\nconst compression = require('compression');
\nconst cors = require('cors');
\nconst hpp = require('hpp');
\nconst expressMongoanitaize = require('express-mongo-sanitize');
\nconst app = express();
\n\nconst helloWorldRoute = require('./app/routes/helloWorld.route');\nconst { requestId } = require('./service/uuidGenerator');\nconst { consoleWritter } = require('./service/consoleViewer');const notFound = require('./middlewares/notFound');
const erorrHandler = require('./middlewares/errorHandler');
const { limiter } = require('./middlewares/rateLimiter');\n\nconst port = process.env.PORT\n
process.on('uncaughtException', (error) => {
console.error('Uncaught exception:', error);
});
process.on('unhandledRejection', (error) => {
});
process.on('unhandledRejection', (error) => {
console.error('Unhandled rejection:', error);
});\n
app.use(compression({level: 1}))
app.use(requestId)
app.use(helmet());
app.use(express.json({ limit: '500mb', extended: true }));
});\n
app.use(limiter);
app.use(expressMongoanitaize());
app.use(hpp());
app.use('*', cors());
app.use(compression({level: 1}))
app.use(requestId)
app.use(helmet());
app.use(express.json({ limit: '500mb', extended: true }));
\napp.use('/api/', helloWorldRoute);

@@ -140,16 +146,16 @@ \napp.get('/', (req, res) => res.send('Hello World!'))

});`;
fs.writeFileSync(`./${mainFileName ? mainFileName : alterMainFilename}.js`, jsContent);
fs.writeFileSync(`./${mainFileName ? mainFileName : alterMainFilename}.js`, jsContent);
const routeContent = `const express = require('express');
const routeContent = `'use strict';\nconst express = require('express');
\nconst router = express.Router();
\nconst helloWorld = require('../controllers/helloWorld.controller');
\nrouter.get('/helloworld', helloWorld.helloWorld);
\nmodule.exports = router;`
fs.writeFileSync('./app/routes/helloWorld.route.js', routeContent);
\nmodule.exports = router;`;
fs.writeFileSync('./app/routes/helloWorld.route.js', routeContent);
//console.log("\nRoute file created successfully !");
const controllerContent = `const { logger } = require('../../config/logger');\nconst helloWorld = require('../models/helloWorld.model');
const controllerContent = `'use strict';\nconst { logger } = require('../../config/logger');\nconst helloWorld = require('../models/helloWorld.model');
\nexports.helloWorld = async (req, res, next) => {\n\ttry {
\n\t\tlogger.info({requestId: req.id, message: \`ip: \${req.ip} \ \${req.method}/ \${req.originalUrl} helloworld received\`})
\n\t\tconst data = await helloWorld.helloWorld();\n\t\tres.status(200).json({\n\t\t\tMessage: "Hello World",\n\t\t\tdata: data,\n\t\t});\n\t} catch (error) {\n\t\tnext(error)\n\t}\n};`
\n\t\tconst data = await helloWorld.helloWorld();\n\t\tres.status(200).json({\n\t\t\tMessage: "Hello World",\n\t\t\tdata: data,\n\t\t});\n\t} catch (error) {\n\t\tnext(error)\n\t}\n};`;

@@ -160,7 +166,7 @@ fs.writeFileSync('./app/controllers/helloWorld.controller.js', controllerContent);

const modelContent = `exports.helloWorld = async () => {\n\treturn "Hello World";\n};
`
fs.writeFileSync('./app/models/helloWorld.model.js', modelContent);
//console.log("\nModel file created successfully !");
`;
fs.writeFileSync('./app/models/helloWorld.model.js', modelContent);
//console.log("\nModel file created successfully !");
const loggerContent = `const winston = require('winston');
const loggerContent = `'use strict';\nconst winston = require('winston');
require('winston-daily-rotate-file');

@@ -197,3 +203,3 @@

module.exports = {logger}`
module.exports = {logger}`;

@@ -203,4 +209,3 @@ fs.writeFileSync('./config/logger.js', loggerContent);

const uuidFunctioncontent = `const uuid = require('uuid')\n
const uuidFunctioncontent = `'use strict';\nconst uuid = require('uuid')\n
/**

@@ -220,4 +225,3 @@ * uuid add in request ( find the sequence of logger and multipurpose )

const consoleWritter = `const { logger } = require('../config/logger');
const consoleWritter = `'use strict';\nconst { logger } = require('../config/logger');
\nconst consoleWritter = (port) => {

@@ -237,8 +241,8 @@ logger.info({message: \`\\n------------------------------------------------- \\n Port running on \${port}\\n -------------------------------------------------\`})

//.env file write
const envContent = `PORT = ${port ? port : 8080}`;
fs.writeFileSync('./.env', envContent);
//.env file write
const envContent = `PORT = ${port ? port : 8080}`;
fs.writeFileSync('./.env', envContent);
//.gitignore
const gitignore = `# dependencies
//.gitignore
const gitignore = `# dependencies
/node_modules

@@ -268,5 +272,5 @@ /.pnp

.vs`;
fs.writeFileSync('./.gitignore', gitignore);
fs.writeFileSync('./.gitignore', gitignore);
const prettier = `{
const prettier = `{
\"printWidth\": 200,

@@ -279,5 +283,5 @@ \"singleQuote\": true,

}`;
fs.writeFileSync('./.prettierrc', prettier);
fs.writeFileSync('./.prettierrc', prettier);
const notFound = `const notFound = (req, res) => {
const notFound = `'use strict';\nconst notFound = (req, res) => {
res.status(404).send({

@@ -295,5 +299,5 @@ success: 'false',

`;
fs.writeFileSync('./middlewares/notFound.js', notFound);
fs.writeFileSync('./middlewares/notFound.js', notFound);
const _500Middleware = `
const _500Middleware = `'use strict';
const errorHandler = (req, res, next) => {

@@ -325,5 +329,20 @@ // Middleware to handle 5XX errors

fs.writeFileSync('./middlewares/errorHandler.js', _500Middleware);
} else {
const rateLimiter = `'use strict';
const rateLimit = require('express-rate-limit');
const minitues = 2;
const limiter = rateLimit({
windowMs: minitues * 60 * 1000, // 15 minutes
max: 10, // Limit each IP to 100 requests per \`window\` (here, per 15 minutes)
standardHeaders: true, // Return rate limit info in the \`RateLimit-*\` headers
legacyHeaders: false, // Disable the \`X-RateLimit-*\` headers
message: \`Too many requests, please try again later after \${minitues} minitues.\` // Sent message to client too many requests are hitting
});
module.exports = { limiter };
`;
fs.writeFileSync('./middlewares/rateLimiter.js', rateLimiter);
} else {
console.log(`Already ${config?.main} Exist !`);

@@ -333,11 +352,24 @@ }

console.log("Wait for few minutues to install npm packages !!!");
console.log('Wait for few minutues to install npm packages !!!');
const { execSync } = require("child_process");
const packageArr = ['npm i express', 'npm i nodemon --save-dev', 'npm i winston', 'npm i winston-daily-rotate-file', 'npm i helmet', 'npm i uuid', 'npm i dotenv', 'npm i compression', 'npm i prettier --save-dev', 'npm run prettify']
const { execSync } = require('child_process');
const packageArr = [
'npm i express',
'npm i nodemon --save-dev',
'npm i winston',
'npm i winston-daily-rotate-file',
'npm i helmet',
'npm i uuid',
'npm i dotenv',
'npm i compression',
'npm i hpp',
'npm i cors',
'npm i express-mongo-sanitize',
'npm i prettier --save-dev',
'npm run prettify'
];
for (let start = 0; start < packageArr.length; start++) {
const element = packageArr[start];
const result = execSync(element).toString();
}
const element = packageArr[start];
const result = execSync(element).toString();
}

@@ -344,0 +376,0 @@ console.log(`\n

{
"name": "configure-express-app",
"version": "3.2.26",
"version": "3.2.27",
"description": "use npx configure-express-app",

@@ -5,0 +5,0 @@ "bin": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc