MCPSERV.CLUB
Open QuarterMaster

Open QuarterMaster

Self-Hosted

All‑in‑one inventory system for every scale

Active(93)
43stars
0views
Updated 2 days ago

Overview

Discover what makes Open QuarterMaster powerful

Open QuarterMaster (OQM) is a self‑hosted inventory management engine that exposes its core logic through a **RESTful JSON API** while offering a lightweight web UI (the *Base Station*) for day‑to‑day operations. At its heart lies a **domain‑driven core** written in C# (.NET 8) that models items, locations, movements, and ownership. The core is intentionally agnostic of any persistence mechanism; it delegates data storage to a pluggable **repository layer** that supports both relational databases (PostgreSQL, MySQL) and NoSQL stores (MongoDB). This design allows developers to swap storage back‑ends without touching business logic, which is crucial for scaling from a single Raspberry Pi to an enterprise‑grade Kubernetes cluster.

Modular plugin architecture

Event‑driven workflow

Strong typing & validation

Kubernetes

Overview

Open QuarterMaster (OQM) is a self‑hosted inventory management engine that exposes its core logic through a RESTful JSON API while offering a lightweight web UI (the Base Station) for day‑to‑day operations. At its heart lies a domain‑driven core written in C# (.NET 8) that models items, locations, movements, and ownership. The core is intentionally agnostic of any persistence mechanism; it delegates data storage to a pluggable repository layer that supports both relational databases (PostgreSQL, MySQL) and NoSQL stores (MongoDB). This design allows developers to swap storage back‑ends without touching business logic, which is crucial for scaling from a single Raspberry Pi to an enterprise‑grade Kubernetes cluster.

Key Features

  • Modular plugin architecture – Each extension lives in software/plugins and registers itself with the core via a simple attribute‑based discovery system. Plugins can expose new REST endpoints, add background workers, or hook into existing lifecycle events (e.g., OnItemAdded).
  • Event‑driven workflow – OQM publishes domain events to a built‑in message bus (currently SignalR for real‑time web hooks, with optional RabbitMQ or Azure Service Bus support). This makes it trivial to wire up external systems such as POS terminals, RFID readers, or ERP back‑ends.
  • Strong typing & validation – All API contracts are defined with OpenAPI/Swagger, and the core uses FluentValidation for request payloads. This guarantees that clients receive clear error messages and developers can auto‑generate SDKs in multiple languages.

Technical Stack

LayerTechnologyRationale
API & CoreC# / .NET 8, ASP.NET CoreMature ecosystem, excellent performance on Linux, easy Docker support
PersistenceEntity Framework Core + provider abstractionRapid development with LINQ; provider‑agnostic for PostgreSQL/MySQL/MongoDB
UIReact (Vite), TailwindCSSResponsive front‑end with minimal bundle size
MessagingSignalR + optional RabbitMQLow‑latency WebSocket communication for real‑time updates
DeploymentDocker Compose / Helm charts, optional k8s manifestsContainerized by default; supports ARM64 for Raspberry Pi

Deployment & Infrastructure

OQM ships with a single‑host Docker Compose bundle that pulls the core, base station, and optional PostgreSQL image. For production, the repository recommends:

  • Kubernetes: Deploy the core as a Deployment with a persistent PostgreSQL StatefulSet; expose the Base Station via an Ingress.
  • Raspberry Pi: Use the provided ARM‑compatible images; scale horizontally by adding more Pi nodes behind a load balancer.
  • High‑availability: The core exposes a health endpoint (/healthz) and can be behind a Kubernetes readiness probe. Database replication is left to the underlying DB engine, but the repository layer supports read‑replica connections.

Integration & Extensibility

Developers can extend OQM in two primary ways:

  1. Plugin development – Implement the IOqmPlugin interface, register routes in ConfigureServices, and hook into events via delegates. The plugin package is distributed as a NuGet library, allowing versioned upgrades without touching the core.
  2. Webhooks & API – OQM can send HTTP POSTs to any external URL when inventory changes occur. Conversely, third‑party systems can consume the OpenAPI spec and integrate via authenticated bearer tokens (JWT). The core also supports OIDC for single‑sign‑on if you run it behind an IdentityServer.

Developer Experience

  • Documentation – The repo contains a comprehensive docs/ folder with architecture diagrams, API reference (auto‑generated), and plugin developer guides.
  • Community – An active Discord channel, GitHub Discussions, and a contributor list of 12+ maintainers provide rapid feedback.
  • Configuration – All runtime settings are externalized in appsettings.json or environment variables, enabling CI/CD pipelines to inject secrets securely.

Use Cases

ScenarioHow OQM Helps
Homebrew pantryStore item counts, expiration dates, and generate reorder lists via the UI.
Retail POSPlug a lightweight POS module that consumes OQM’s API to update stock in real time.
Warehouse automationConnect RFID scanners to a custom plugin that updates location data via webhooks.
SaaS multi‑tenantSpin up a core instance per tenant; use the plugin system to enforce tenant isolation and custom workflows.

Advantages Over Alternatives

  • Zero‑cost licensing – MIT license allows unrestricted use in commercial products.
  • Performance & scalability – .NET 8 core runs efficiently on ARM and x86, with optional async I/O for database calls.
  • Modularity – Unlike monolithic solutions, OQM’s plugin system lets developers add only the features they need.
  • Open‑source ecosystem – All dependencies are open, and the community actively maintains security patches.

In short, Open QuarterMaster offers a clean, extensible API‑first architecture that can grow from a hobbyist project on a Raspberry Pi to an enterprise inventory backbone, all while keeping the developer experience smooth and well‑documented.

Open SourceReady to get started?

Join the community and start self-hosting Open QuarterMaster today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
other
License
GPL-3.0
Stars
43
Technical Specs
Pricing
Open Source
Docker
Dockerfile
Supported OS
LinuxDocker
Author
Epic-Breakfast-Productions
Epic-Breakfast-Productions
Last Updated
2 days ago