Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hookdeck/ecommerce-serverless-eda
An example serverless event-driven architecture using Hookdeck as and event gateway for cross-service communication
https://github.com/hookdeck/ecommerce-serverless-eda
event-driven-applications event-driven-architecture hookdeck serverless vercel webhooks xata
Last synced: 11 days ago
JSON representation
An example serverless event-driven architecture using Hookdeck as and event gateway for cross-service communication
- Host: GitHub
- URL: https://github.com/hookdeck/ecommerce-serverless-eda
- Owner: hookdeck
- Created: 2024-08-02T12:21:13.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-09-27T09:33:28.000Z (4 months ago)
- Last Synced: 2024-11-23T05:12:28.226Z (2 months ago)
- Topics: event-driven-applications, event-driven-architecture, hookdeck, serverless, vercel, webhooks, xata
- Language: TypeScript
- Homepage:
- Size: 1.51 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# E-Commerce Serverless EDA
This is an example monorepo demonstrating building a serverless e-commerce event-driven architecture.
![Web Store home page](docs/web-store.png)
## Apps and Packages
The example includes the following packages/apps:
- [`web-store`](apps/web-store/): a [Next.js](https://nextjs.org/) e-commerce example application
- [`inventory`](apps/inventory): a [Next.js](https://nextjs.org/) application exposing services for inventory management API routes
- `@repo/types`: shared type definitions across services in the EDA
- `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`)
- `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepoEach package/app is 100% [TypeScript](https://www.typescriptlang.org/).
## Hosted service dependencies
The application relies on the following hosted services:
- [Hookdeck](https://hookdeck.com/ref=github-serverless-eda-vercel) as an event gateway for inter-service communication
- [Xata](https://xata.io?ref=github-serverless-eda-vercel) for data persistence
- [Vercel](https://vercel.com?ref=github-serverless-eda-vercel) for deployment## Build
To build all apps and packages, run the following command:
```
cd serverless-eda-vercel
npm build
```## Develop
To develop all apps and packages, run the following command:
```
cd serverless-eda-vercel
npm dev
```## Useful Links
Learn more about Turborepo:
- [Tasks](https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks)
- [Caching](https://turbo.build/repo/docs/core-concepts/caching)
- [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching)
- [Filtering](https://turbo.build/repo/docs/core-concepts/monorepos/filtering)
- [Configuration Options](https://turbo.build/repo/docs/reference/configuration)
- [CLI Usage](https://turbo.build/repo/docs/reference/command-line-reference)