Skip to content

angesanze/portable-inventory

Repository files navigation

Varasto

Documentation CI Docs deploy

Naming: the product is Varasto; portable-inventory is its technical slug (repository, Docker, package names). Both refer to the same project.

Varasto is a modern, open-source system for managing mixed inventory types — from bulk consumables to serialized assets and perishable batches — in a single, unified, multi-tenant interface. Stock behaviour is driven by a per-product profile (7 profiles → 6 calculation engines), and every change is written to an append-only Movement ledger.

Tech stack

  • Backend: Python · Django · Django REST Framework (PostgreSQL)
  • Frontend: React · TypeScript · Refine · Vite · Tailwind CSS
  • Widget SDK: embeddable web component (sdk/)
  • Docs: MkDocs (Material)
  • Orchestration: Docker Compose

Quick start (Docker)

git clone https://github.com/angesanze/portable-inventory.git
cd portable-inventory
cp .env.example .env          # sensible defaults for local dev
docker compose up --build

Then open (the dev stack runs each service on its own port):

Service URL
Frontend (SPA) http://localhost:5173
Backend API http://localhost:8001/api/v1/ (host 8001 → container 8000; 8000 is left free to avoid a Portainer conflict)
Documentation http://localhost:8002
Demo widget host http://localhost:8081

In normal use you browse the app at :5173; the Vite dev server proxies /api, /admin, /static and /go to the backend.

Development

make test-all     # backend (pytest) + frontend (vitest) + SDK + API schema
make test-backend # backend tests only
make lint         # ruff (backend) + eslint (frontend)
make typecheck    # tsc for frontend + SDK

Backend dev/test dependencies live in backend/requirements-dev.txt (pip install -r backend/requirements-dev.txt); the production image installs only backend/requirements.txt.

Documentation

📖 Live docs: https://angesanze.github.io/portable-inventory/ — auto-published from docs/ on every push to main.

Locally the docs are served by MkDocs at http://localhost:8002. Start with:

Contributing

See CONTRIBUTING.md.

About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages