https://github.com/walmartlabs/cookie-cutter
An opinionated micro-services framework for TypeScript
https://github.com/walmartlabs/cookie-cutter
amqp apm cosmosdb event-driven event-sourcing framework grpc jaeger kafka metrics microservices prometheus redis tracing typescript
Last synced: 14 days ago
JSON representation
An opinionated micro-services framework for TypeScript
- Host: GitHub
- URL: https://github.com/walmartlabs/cookie-cutter
- Owner: walmartlabs
- License: other
- Created: 2019-11-23T21:11:00.000Z (over 5 years ago)
- Default Branch: develop
- Last Pushed: 2024-05-30T17:28:44.000Z (11 months ago)
- Last Synced: 2024-10-29T21:03:32.134Z (6 months ago)
- Topics: amqp, apm, cosmosdb, event-driven, event-sourcing, framework, grpc, jaeger, kafka, metrics, microservices, prometheus, redis, tracing, typescript
- Language: TypeScript
- Homepage: https://walmartlabs.github.io/cookie-cutter
- Size: 3.68 MB
- Stars: 58
- Watchers: 8
- Forks: 35
- Open Issues: 61
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Cookie Cutter
An opinionated framework for building event-driven and request/response based micro services.
| Stable | Beta |
|--------|------|
| [](https://github.com/walmartlabs/cookie-cutter/actions) | [](https://github.com/walmartlabs/cookie-cutter/actions) |## Features
* APM (Distributed Tracing with OpenTracing out of the box)
* First Class Support for Event Sourcing
* State Management with automatic Caching
* Extensible and Pluggable
* Can be used for RPC, message based services, and even cron jobs
* Framework for Writing End-to-End Tests## Getting Started
The documentation is available [here](https://walmartlabs.github.io/cookie-cutter).
## Packages
| Package | Stable | Beta |
|---------|--------|------|
| core | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-core) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-core/v/next) |
| amqp | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-amqp) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-amqp/v/next) |
| azure | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-azure) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-azure/v/next) |
| gcp | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-gcp) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-gcp/v/next) |
| grpc | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-grpc) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-grpc/v/next) |
| instana | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-instana) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-instana/v/next) |
| jaeger | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-jaeger) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-jaeger/v/next) |
| kafka | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-kafka) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-kafka/v/next) |
| kubernetes | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-kubernetes) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-kubernetes/v/next) |
| lightstep | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-lightstep) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-lightstep/v/next) |
| mssql | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-mssql) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-mssql/v/next) |
| prometheus | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-prometheus) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-prometheus/v/next) |
| proto | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-proto) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-proto/v/next) |
| redis | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-redis) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-redis/v/next) |
| s3 | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-s3) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-s3/v/next) |
| statsd | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-statsd) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-statsd/v/next) |
| timer | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-timer) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-timer/v/next) |
| validatejs | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-validatejs) | [](https://www.npmjs.com/package/@walmartlabs/cookie-cutter-validatejs/v/next) |# License
See [LICENSE](LICENSE.md) and [LICENSE-DOCS](LICENSE-DOCS) for more details.