@mimik/be-project-builder
v1.0.0
Published
Project builder for mimik back end service
Keywords
Readme
@mimik/be-project-builder
Interactive project scaffolding tool for mimik backend services. It guides you through configuring core service settings, optional logging/location configs, and (optionally) fetching Swagger definitions to generate controller stubs.
Requirements
- Node.js >= 24
Install
If using this in another repo, add it as a dependency and run the entrypoint. For local use:
npm installUsage
Run with npx (no install):
npx @mimik/be-project-builderOr install globally for a be-project-builder command:
npm install -g @mimik/be-project-builderbe-project-builderYou can also run the tool directly with Node:
node index.jsYou will be prompted for:
- Projects directory (default:
./Projectsunder your home directory) - Optional location/log/mST/mIT/mID config updates
- Customer config (from file or Bitbucket)
- Service details (name, description, type, port, public protocol/domain)
- Optional Swagger API source (file, Bitbucket, or SwaggerHub)
The tool scaffolds a new service directory with src/, local/, and test/ folders and writes config files into the chosen Projects directory.
What it generates
Typical output structure for a new service:
<Projects>/<service-name>/
package.json
src/
index.js
configuration/
controllers/
processors/
models/
lib/
api/ # only if an API definition was provided
local/
start-example.json
setup.js
scripts.js
unScripts.js
commitMsgCheck.js
dotFiles.js
testSetup.js
jsdoc.json
test/
normal/
detached/
src/
mock/Notes
- API definitions can be loaded from a local file, Bitbucket, or SwaggerHub.
- When a Swagger definition is supplied, controller stubs are generated based on
x-swagger-router-controllerandoperationIdvalues. - Config prompts write JSON/JSONC/YAML/.env files, preserving JSON comments where applicable.
Troubleshooting
If you see errors fetching APIs or customer config, verify your Bitbucket/SwaggerHub credentials in the prompted key.json file and ensure network access.
License
No license file found in this repository.
