MCPcopy
hub / github.com/expressjs/generator / createApplication

Function createApplication

bin/express-cli.js:136–359  ·  view source on GitHub ↗

* Create application at the given directory. * * @param {string} name * @param {string} dir

(name, dir)

Source from the content-addressed store, hash-verified

134 */
135
136function createApplication (name, dir) {
137 console.log()
138
139 // Package
140 var pkg = {
141 name: name,
142 version: '0.0.0',
143 private: true,
144 scripts: {
145 start: 'node ./bin/www'
146 },
147 dependencies: {
148 'debug': '~2.6.9',
149 'express': '~4.16.1'
150 }
151 }
152
153 // JavaScript
154 var app = loadTemplate('js/app.js')
155 var www = loadTemplate('js/www')
156
157 // App name
158 www.locals.name = name
159
160 // App modules
161 app.locals.localModules = Object.create(null)
162 app.locals.modules = Object.create(null)
163 app.locals.mounts = []
164 app.locals.uses = []
165
166 // Request logger
167 app.locals.modules.logger = 'morgan'
168 app.locals.uses.push("logger('dev')")
169 pkg.dependencies.morgan = '~1.9.1'
170
171 // Body parsers
172 app.locals.uses.push('express.json()')
173 app.locals.uses.push('express.urlencoded({ extended: false })')
174
175 // Cookie parser
176 app.locals.modules.cookieParser = 'cookie-parser'
177 app.locals.uses.push('cookieParser()')
178 pkg.dependencies['cookie-parser'] = '~1.4.4'
179
180 if (dir !== '.') {
181 mkdir(dir, '.')
182 }
183
184 mkdir(dir, 'public')
185 mkdir(dir, 'public/javascripts')
186 mkdir(dir, 'public/images')
187 mkdir(dir, 'public/stylesheets')
188
189 // copy css templates
190 switch (program.css) {
191 case 'less':
192 copyTemplateMulti('css', dir + '/public/stylesheets', '*.less')
193 break

Callers 1

mainFunction · 0.85

Calls 6

loadTemplateFunction · 0.85
mkdirFunction · 0.85
copyTemplateMultiFunction · 0.85
copyTemplateFunction · 0.85
writeFunction · 0.85
launchedFromCmdFunction · 0.85

Tested by

no test coverage detected