@@ -167,6 +167,8 @@ create-polyglot dev --docker
167167| ` create-polyglot init <name> ` | Scaffold a new workspace (root invocation without ` init ` is deprecated). |
168168| ` create-polyglot add service <name> ` | Add a service after init (` --type ` , ` --port ` , ` --yes ` ). |
169169| ` create-polyglot add plugin <name> ` | Create plugin skeleton under ` plugins/<name> ` . |
170+ | ` create-polyglot remove service <name> ` | Remove a service from the workspace (` --keep-files ` , ` --yes ` ). |
171+ | ` create-polyglot remove plugin <name> ` | Remove a plugin from the workspace (` --keep-files ` , ` --yes ` ). |
170172| ` create-polyglot dev [--docker] ` | Run Node & frontend services locally or all via compose. |
171173
172174## Init Options
@@ -227,6 +229,50 @@ my-org/
2272294 . Edit services under ` services/<name> ` .
2282305 . Extend infra / databases inside ` compose.yaml ` .
229231
232+ ## Managing Services & Plugins
233+
234+ ### Adding Components
235+ Add services after initial scaffolding:
236+ ``` bash
237+ create-polyglot add service payments --type node --port 4100
238+ create-polyglot add plugin analytics
239+ ```
240+
241+ ### Removing Components
242+ Clean removal of services and plugins:
243+ ``` bash
244+ # Remove a service (including files and configuration)
245+ create-polyglot remove service payments --yes
246+
247+ # Remove a plugin
248+ create-polyglot remove plugin analytics --yes
249+
250+ # Keep files but remove from configuration
251+ create-polyglot remove service payments --keep-files --yes
252+ ```
253+
254+ The remove commands:
255+ - ** Remove from configuration** : Updates ` polyglot.json ` , ` compose.yaml ` , and root ` package.json ` scripts
256+ - ** Clean up files** : Removes service/plugin directories unless ` --keep-files ` is specified
257+ - ** Update dependencies** : Cleans up related logs and docker configurations
258+ - ** Interactive confirmation** : Prompts for confirmation unless ` --yes ` is used
259+ - ** Plugin management** : Also available via ` create-polyglot plugin remove <name> `
260+
261+ ### Service Removal Details
262+ When removing a service:
263+ - Service entry removed from ` polyglot.json `
264+ - Service definition removed from ` compose.yaml `
265+ - Service directory deleted from ` services/<name> ` (unless ` --keep-files ` )
266+ - Related scripts removed from root ` package.json `
267+ - Log files cleaned up
268+
269+ ### Plugin Removal Details
270+ When removing a plugin:
271+ - Plugin configuration removed from ` polyglot.json `
272+ - Plugin directory deleted from ` plugins/<name> ` (unless ` --keep-files ` )
273+ - Plugin unloaded from the plugin system
274+ - External plugin references removed
275+
230276### Basic Dev Runner
231277When no preset is chosen, ` npm run dev ` uses ` npx create-polyglot dev ` :
2322781 . Detects package manager (pnpm > yarn > bun > npm fallback)
@@ -291,7 +337,6 @@ Generates ESLint + Prettier base configs at the root. Extend rules per service i
291337- Automatic test harness & CI workflow template
292338- Language-specific shared libs (Python package, Go module)
293339- Hot reload integration aggregator
294- - Remove service / remove plugin commands
295340
296341## Contributing
297342Contributions welcome! See ` CONTRIBUTING.md ` for guidelines. Please run tests before submitting a PR:
@@ -489,7 +534,6 @@ See [`docs/automated-release-notes.md`](docs/automated-release-notes.md) for det
489534- Automatic test harness & CI workflow template
490535- Language-specific shared libs (Python package, Go module)
491536- Hot reload integration aggregator
492- - Remove service / remove plugin commands
493537
494538## License
495539MIT
0 commit comments