Skip to main content

expressjs-development

Provides comprehensive guidance for building production-ready web applications and REST APIs using Express.js.

Install this skill

or
9/100

Security score

The expressjs-development skill was audited on Feb 9, 2026 and we found 35 security issues across 4 threat categories. Review the findings below before installing.

Categories Tested

Security Issues

medium line 52

Template literal with variable interpolation in command context

SourceSKILL.md
52console.log(`Server running on port ${PORT}`);
medium line 99

Template literal with variable interpolation in command context

SourceSKILL.md
99res.json({ message: `Update user ${req.params.id}` });
medium line 103

Template literal with variable interpolation in command context

SourceSKILL.md
103res.json({ message: `Delete user ${req.params.id}` });
medium line 168

Template literal with variable interpolation in command context

SourceSKILL.md
168res.json({ message: `Get user ${req.params.id}` });
medium line 190

Template literal with variable interpolation in command context

SourceSKILL.md
190console.log(`${req.method} ${req.path}`);
medium line 272

Template literal with variable interpolation in command context

SourceSKILL.md
272console.log(`${req.method} ${req.path} ${res.statusCode} ${duration}ms`);
medium line 445

Template literal with variable interpolation in command context

SourceSKILL.md
445res.send(`${user.name}`);
medium line 448

Template literal with variable interpolation in command context

SourceSKILL.md
448res.send(`<p>${user.name}</p>`);
medium line 1042

Template literal with variable interpolation in command context

SourceSKILL.md
1042.get(`/api/users/${user._id}`)
medium line 1069

Template literal with variable interpolation in command context

SourceSKILL.md
1069.set('Authorization', `Bearer ${token}`)
medium line 1251

Template literal with variable interpolation in command context

SourceSKILL.md
1251const key = `cache:${req.originalUrl}`;
medium line 1332

Template literal with variable interpolation in command context

SourceSKILL.md
1332error = new ValidationError(`${field} already exists`);
medium line 1457

Template literal with variable interpolation in command context

SourceSKILL.md
1457console.log(`Server running on port ${PORT}`);
medium line 26

Webhook reference - potential data exfiltration

SourceSKILL.md
26- Building webhook handlers and integrations
low line 50

Access to .env file

SourceSKILL.md
50const PORT = process.env.PORT || 3000;
low line 62

Access to .env file

SourceSKILL.md
62app.set('port', process.env.PORT || 3000);
low line 63

Access to .env file

SourceSKILL.md
63app.set('env', process.env.NODE_ENV || 'development');
low line 287

Access to .env file

SourceSKILL.md
287const decoded = jwt.verify(token, process.env.JWT_SECRET);
low line 478

Access to .env file

SourceSKILL.md
478...(process.env.NODE_ENV === 'development' && { stack: err.stack })
low line 736

Access to .env file

SourceSKILL.md
736process.env.JWT_SECRET,
low line 770

Access to .env file

SourceSKILL.md
770process.env.JWT_SECRET,
low line 792

Access to .env file

SourceSKILL.md
792const decoded = jwt.verify(refreshToken, process.env.REFRESH_SECRET);
low line 796

Access to .env file

SourceSKILL.md
796process.env.JWT_SECRET,
low line 815

Access to .env file

SourceSKILL.md
815const decoded = jwt.verify(token, process.env.JWT_SECRET);
low line 919

Access to .env file

SourceSKILL.md
919await mongoose.connect(process.env.MONGODB_URI, {
low line 1065

Access to .env file

SourceSKILL.md
1065const token = jwt.sign({ userId: '123' }, process.env.JWT_SECRET);
low line 1114

Access to .env file

SourceSKILL.md
1114origin: process.env.ALLOWED_ORIGINS?.split(',') || 'https://example.com',
low line 1347

Access to .env file

SourceSKILL.md
1347...(process.env.NODE_ENV === 'development' && { stack: err.stack })
low line 1364

Access to .env file

SourceSKILL.md
1364level: process.env.LOG_LEVEL || 'info',
low line 1376

Access to .env file

SourceSKILL.md
1376if (process.env.NODE_ENV !== 'production') {
low line 1455

Access to .env file

SourceSKILL.md
1455const PORT = process.env.PORT || 3000;
low line 253

External URL reference

SourceSKILL.md
253origin: 'https://example.com',
low line 403

External URL reference

SourceSKILL.md
403res.redirect(301, 'https://example.com');
low line 1114

External URL reference

SourceSKILL.md
1114origin: process.env.ALLOWED_ORIGINS?.split(',') || 'https://example.com',
low line 1124

External URL reference

SourceSKILL.md
1124const allowedOrigins = ['https://example.com', 'https://app.example.com'];
Scanned on Feb 9, 2026
View Security Dashboard
Installation guide →