Skip to content

Inventory Worker is a research project for building a modular application template deployable on Cloudflare.

License

Notifications You must be signed in to change notification settings

arthurgubaidullin/inventory-worker

Repository files navigation

Inventory Worker

Open in Dev Containers

Inventory Worker is a research-driven project aimed at creating a modular, loosely coupled application deployable on Cloudflare Workers and Cloudflare Pages. The project serves as a reusable template for future applications and explores the use of Google Protobuf for efficient HTTP contract management.

Getting Started

If you already have VS Code and Docker installed, you can click the badge above or here to get started.

Clicking these links will cause VS Code to automatically install the Dev Containers extension if needed, clone the source code into a container volume, and spin up a dev container for use.

Project Setup

Setup Steps:

  1. Clone the repository

  2. Install dependencies:

    npm install

  3. Build the project:

    npx turbo build

  4. Run the development server:

    npm run dev -w web

Project Structure

Applications

  • /web — Web application.
  • /worker — Cloudflare Workers application.

Libraries

Catalog

  • /catalog — Catalog bounded-context.
    • /client — State store.
    • /http
      • /service — HTTP service.
      • /contracts — HTTP contracts.
      • /client — HTTP client.
    • /service — Business logic.
    • /database — Database.

Inventory

  • /inventory — Inventory bounded-context.
    • /client — State store (not implemented).
    • /http
      • /service — HTTP service.
      • /contracts — HTTP contracts.
      • /client — HTTP client (not implemented).
    • /service — Business logic.
    • /database — Database.

Others

  • /common — Common modules.
  • /logger — Logger service.
  • /services — Services factory.
  • /http-services — HTTP-related services factory.

License

MIT license.

About

Inventory Worker is a research project for building a modular application template deployable on Cloudflare.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published