You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+62-36Lines changed: 62 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# create-polyglot
2
2
3
-
CLI to scaffold a polyglot microservice monorepo (Node.js, Python/FastAPI, Go, Java Spring Boot, Next.js frontend) with optional Turborepo or Nx presets, Docker assets, shared packages, and an interactive wizard.
3
+
CLI to scaffold a polyglot microservice monorepo (Node.js, Python/FastAPI, Go, Java Spring Boot, Next.js frontend) with optional Turborepo or Nx presets, Docker assets, shared packages, an interactive wizard, post-init service/plugin additions, and a persisted `polyglot.json` config.
4
4
5
5
## Installation (local dev)
6
6
@@ -12,16 +12,34 @@ npm link # or: pnpm link --global / yarn link / bun link
3.Starts only services with a `package.json` containing a `dev` script
81
-
4. Prefixes each line of output with the service name
86
+
2. Scans `services/`for Node services
87
+
3.Runs those with a `dev` script
88
+
4. Prefixes log lines with service name
82
89
83
-
Non-Node services (Python/Go/Spring) are skipped automatically; start them manually as needed:
90
+
Non-Node services start manually or via compose:
84
91
```
85
-
cd apps/python && uvicorn main:app --reload
92
+
cd services/python && uvicorn app.main:app --reload
86
93
```
87
94
88
95
### Docker & Compose
@@ -95,8 +102,25 @@ You can extend compose with volumes, env vars, or database services after genera
95
102
### Frontend Generation
96
103
If `--frontend-generator create-next-app` is supplied, the tool shells out to `npx create-next-app` (respecting the chosen package manager for installs). If it fails, a fallback static template is used.
Used by `add service` to assert uniqueness and regenerate `compose.yaml`.
118
+
119
+
### Plugins
120
+
`create-polyglot add plugin <name>` scaffolds `plugins/<name>/index.js` with a hook skeleton (`afterInit`). Future releases will execute hooks automatically during lifecycle events.
121
+
98
122
### Shared Package
99
-
An example `packages/shared`workspace demonstrates sharing Node utilities across services. Expand or add more workspaces as needed.
123
+
`packages/shared`shows cross-service Node utilities. Extend or add per-language shared modules.
100
124
101
125
### Force Overwrite
102
126
If the target directory already exists, the CLI aborts unless `--force` is passed. Use with caution.
@@ -108,11 +132,13 @@ Pass `--git` to automatically run `git init`, create an initial commit, and (if
108
132
Generates ESLint + Prettier base configs at the root. Extend rules per service if needed.
0 commit comments