https://github.com/jaystack/corpjs-system
Start and stop your modules in proper order
https://github.com/jaystack/corpjs-system
Last synced: 3 months ago
JSON representation
Start and stop your modules in proper order
- Host: GitHub
- URL: https://github.com/jaystack/corpjs-system
- Owner: jaystack
- License: other
- Created: 2017-02-13T12:27:46.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-03-13T16:11:37.000Z (about 8 years ago)
- Last Synced: 2025-02-16T06:32:53.972Z (4 months ago)
- Language: TypeScript
- Size: 61.5 KB
- Stars: 0
- Watchers: 10
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# corpjs-system
Start and stop your components in proper order## Features
### Reused features from Electric by Systemic
- System built on components
- Dependencies between components
- Graceful start and stop### Additional and enhanced features beyond Electric by Systemic
- Dependencies are controlled globaly
- More descriptive dependencies
- renaming
- taking subresources
- Grouping subsystems### Additional and enhanced features beyond Systemic by corpjs-system
- Type-based
- Promise interface instead of callback interface
- More ergonomic system grouping
- Opportunity for restarting the whole system from any component
- Opportunity for stopping the whole system from any component
- Opportunity for ignorable component errors
- Graceful stop and optional process exit on abnormal behavior
- Graceful SIGINT / SIGTERM termination## Events
- start
- `resources: ResourceDescriptor` - all resources of the whole system
- stop
- restart
- `resources: ResourceDescriptor` - all resources of the whole system after restart
- componentStart
- `componentName: String`
- `resources: ResourceDescriptor` - currently available resources
- componentStartFailed
- `componentName: String`
- `error: Error`
- componentStop
- `componentName: String`
- componentStopFailed
- `componentName: String`
- `error: Error`
- stopTimeout
- `stopTimeout: Number`
- componentRunFailed
- `componentName: String`
- `error: Error`
- uncaughtException
- `error: Error`
- unhandledRejection
- `error: Error`
- terminate
- `signal: String`
- exit
- `code: Number`