jacob-setup
Advanced tools
Comparing version 1.0.12 to 1.0.13
134
index.js
#!/usr/bin/env node | ||
const semver = require("semver"); | ||
const packageJson = require("./package.json"); | ||
if (!semver.satisfies(process.version, packageJson.engines.node)) { | ||
console.error( | ||
`Required node version ${packageJson.engines.node} not satisfied with current version ${process.version}.`, | ||
); | ||
process.exit(1); | ||
} | ||
const { program } = require("commander"); | ||
@@ -33,3 +43,4 @@ const fs = require("fs"); | ||
name: "installCommand", | ||
message: "What command do you use to install dependencies before building (e.g. npm install or yarn install)?", | ||
message: | ||
"What command do you use to install dependencies before building (e.g. npm install or yarn install)?", | ||
default: "npm install", | ||
@@ -40,3 +51,4 @@ }, | ||
name: "formatCommand", | ||
message: "What command (if any) do you use to fix formatting (e.g. npx prettier . --write or npx eslint --fix .)?", | ||
message: | ||
"What command (if any) do you use to fix formatting (e.g. npx prettier . --write or npx eslint --fix .)?", | ||
}, | ||
@@ -46,3 +58,4 @@ { | ||
name: "buildCommand", | ||
message: "What command do you use to build (e.g. npm run build or yarn build)?", | ||
message: | ||
"What command do you use to build (e.g. npm run build or yarn build)?", | ||
default: "npm run build --verbose", | ||
@@ -54,4 +67,4 @@ }, | ||
message: "Which styling method/framework are you using?", | ||
choices: ["CSS", "Tailwind"], | ||
default: "CSS", | ||
choices: ["Tailwind", "CSS"], | ||
default: "Tailwind", | ||
}, | ||
@@ -62,36 +75,30 @@ { | ||
message: "What is your preferred icon set?", | ||
choices: ["Font Awesome", "Heroicons", "Unicons", "React Feather", "Material UI", "Styled Icons", "IconPark", "CoreUI", "Iconify", "Lucide"], | ||
choices: [ | ||
"Font Awesome", | ||
"Heroicons", | ||
"Unicons", | ||
"React Feather", | ||
"Material UI", | ||
"Styled Icons", | ||
"IconPark", | ||
"CoreUI", | ||
"Iconify", | ||
"Lucide", | ||
], | ||
default: "Font Awesome", | ||
}, | ||
{ | ||
type: "input", | ||
name: "componentExamples", | ||
type: "list", | ||
name: "directories.components", | ||
message: | ||
"Enter the path to an example component file (relative to project root):", | ||
default: "/src/components/ExampleComponent.js", | ||
}, | ||
{ | ||
type: "input", | ||
name: "apiEndpointsExamples", | ||
message: | ||
"Enter the path to an example API endpoint file (relative to project root):", | ||
default: "/src/api/exampleEndpoint.js", | ||
}, | ||
{ | ||
type: "input", | ||
name: "pageExamples", | ||
message: | ||
"Enter the path to an example page file (relative to project root):", | ||
default: "/src/pages/ExamplePage.js", | ||
}, | ||
{ | ||
type: "input", | ||
name: "directories.components", | ||
message: "Enter the root folder path for components:", | ||
"Enter the root folder path where JACoB will add new components (you can edit this later if your location is not listed):", | ||
choices: ["/src/components", "/components"], | ||
default: "/src/components", | ||
}, | ||
{ | ||
type: "input", | ||
type: "list", | ||
name: "directories.pages", | ||
message: "Enter the root folder path for pages:", | ||
message: | ||
"Enter the root folder path where JACoB will add new pages (you can edit this later if your location is not listed):", | ||
choices: ["/src/pages", "/app"], | ||
default: "/src/pages", | ||
@@ -102,3 +109,4 @@ }, | ||
name: "directories.types", | ||
message: "Enter the root folder path for type definitions:", | ||
message: | ||
"Enter the root folder path for type definitions (accept the default if co-located):", | ||
default: "/src/types", | ||
@@ -112,3 +120,4 @@ when: function (answers) { | ||
name: "directories.styles", | ||
message: "Enter the root folder path for styles:", | ||
message: | ||
"Enter the root folder path for styles (accept the default if co-located):", | ||
default: "/src/styles", | ||
@@ -132,56 +141,3 @@ }, | ||
{ | ||
type: "list", | ||
name: "stateManagement.tool", | ||
message: "Select the state management tool you are using:", | ||
choices: ["Redux", "Context API", "None"], | ||
default: "Redux", | ||
}, | ||
{ | ||
type: "input", | ||
name: "stateManagement.storeLocation", | ||
message: | ||
"Enter the path to your state management store configuration:", | ||
default: "/src/store", | ||
when: function (answers) { | ||
return answers.stateManagement.tool !== "None"; | ||
}, | ||
}, | ||
{ | ||
type: "confirm", | ||
name: "testing.writeTests", | ||
message: "Do you want JACoB to generate test files?", | ||
default: true, | ||
}, | ||
{ | ||
type: "input", | ||
name: "testing.testFramework", | ||
message: "Enter the testing framework you are using:", | ||
default: "Jest", | ||
when: function (answers) { | ||
return answers.testing.writeTests; | ||
}, | ||
}, | ||
{ | ||
type: "confirm", | ||
name: "storybook.writeStories", | ||
message: "Do you want JACoB to create Storybook stories?", | ||
default: true, | ||
}, | ||
{ | ||
type: "input", | ||
name: "storybook.storiesLocation", | ||
message: "Enter the directory for your Storybook stories:", | ||
default: "/src/stories", | ||
when: function (answers) { | ||
return answers.storybook.writeStories; | ||
}, | ||
}, | ||
{ | ||
type: "input", | ||
name: "envVariables.exampleFile", | ||
message: "Enter the path to your .env.example file:", | ||
default: "/.env.example", | ||
}, | ||
{ | ||
type: "input", | ||
name: "env", | ||
@@ -194,3 +150,3 @@ message: | ||
const answers = await inquirer.default.prompt(questions); // Access prompt via default | ||
const answers = await inquirer.default.prompt(questions); | ||
const configFilePath = path.join(process.cwd(), "jacob.json"); | ||
@@ -203,3 +159,5 @@ | ||
} | ||
console.log(`JACoB configuration file created at ${configFilePath}`); | ||
console.log( | ||
`JACoB configuration file created at ${configFilePath}. You can edit this file if needed, more information about these settings are found at https://docs.jacb.ai/installation/configuration-customization. \n\nImportant Note: you *must* commit this file to your main/master branch and push to GitHub for JACoB to work properly.`, | ||
); | ||
}); | ||
@@ -206,0 +164,0 @@ } catch (error) { |
{ | ||
"name": "jacob-setup", | ||
"version": "1.0.12", | ||
"version": "1.0.13", | ||
"description": "A command-line utility for generating JACoB configuration files, enabling easy setup and integration of the JACoB AI coding assistant into web development projects.", | ||
@@ -26,4 +26,8 @@ "main": "index.js", | ||
"commander": "^11.1.0", | ||
"inquirer": "^9.2.12" | ||
"inquirer": "^9.2.12", | ||
"semver": "^7.6.2" | ||
}, | ||
"engines": { | ||
"node": ">=14.8.0" | ||
} | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
11420
3
150
+ Addedsemver@^7.6.2
+ Addedsemver@7.6.3(transitive)