Mark Kaylor 5505efd304 Create CLI for Strapi starter project
Create starter CLI

Add spaces option

Extract project basename

Add starter shortcut

Refactor git init commit

Replace concurrently with npm-run-all

Move fetch repo function to dedicated file

Allow shortcut to accept external org repo

Fix package config & readme

Fix versions

Add task prefixes

Update readme

[Starter CLI] error handling (#9600)

* Display error message + help for missing arguments

* Add cleaner error messages

* Bump commander from v6.1.0 to v7.1.0

* Capture and log errors from commander

* Simplify cli argument errors

* Provide more human readable error messages

* Replace throw with console log

* Add logger

Add starter tracking

Add wrapper for tracking keys

Update root config

Keep template in scope root

fix strapi config

Fix open frontend

Remove open-cli

Update for rename frontend->starter

update description

Update tracking

Fix tests

fix e2e tests

Make sure packageJsonStrapi does not override unwanted keys & make it optional to avoid errors

simplify metadata strapi

Allow stater or frontend folder for smooth migration of existing starters

Udpate dep

Handle error
2021-03-25 14:06:01 +01:00

53 lines
1014 B
JavaScript

'use strict';
/**
* Expose main package JSON of the application
* with basic info, dependencies, etc.
*/
module.exports = opts => {
const {
strapiDependencies,
additionalsDependencies,
strapiVersion,
projectName,
uuid,
packageJsonStrapi,
} = opts;
// Finally, return the JSON.
return {
name: projectName,
private: true,
version: '0.1.0',
description: 'A Strapi application',
scripts: {
develop: 'strapi develop',
start: 'strapi start',
build: 'strapi build',
strapi: 'strapi',
},
devDependencies: {},
dependencies: Object.assign(
{},
strapiDependencies.reduce((acc, key) => {
acc[key] = strapiVersion;
return acc;
}, {}),
additionalsDependencies
),
author: {
name: 'A Strapi developer',
},
strapi: {
uuid: uuid,
...packageJsonStrapi,
},
engines: {
node: '>=10.16.0 <=14.x.x',
npm: '^6.0.0',
},
license: 'MIT',
};
};