Inventory Management System
The Inventory Management System is the digital backbone of Museum With No Frontiers (MWNF). It stores and serves the inventory of museum artifacts, monuments, and related cultural heritage content managed by partner institutions around the world.
The system provides:
- A web interface for content managers and administrators to browse, create, and edit inventory records.
- A REST API for programmatic access, enabling external applications to read and manage inventory data.
- Multi-language, multi-audience content — the same artifact can be described in different languages and for different audiences (general public, academic, educational, etc.).
- Image management — upload, process, and attach images to items, collections, and partners.
- Role-based access control — fine-grained permissions for different user roles.
Getting Started
For business users and content managers
Start with the Core Concepts page — it explains every entity and process in plain language.
For developers and collaborators
- Core Concepts — Understand the domain model before touching any code
- Development Setup — Set up your local environment
- Contributing — Workflow, quality standards, and PR process
Documentation Sections
Understanding the System
| Section | Audience | Description |
|---|---|---|
| Core Concepts | Everyone | What the system does, how entities relate, and key business rules |
| Database Models | Developers | Auto-generated reference for all data models, fields, and relationships |
Using the System
| Section | Audience | Description |
|---|---|---|
| Web Interface | Content managers, Developers | The main production UI for managing inventory content |
| API Documentation | Developers | Interactive API explorer (Swagger UI) and TypeScript client |
Running and Deploying
| Section | Audience | Description |
|---|---|---|
| Deployment Guide | Developers, Ops | Development setup, production deployment, and server configuration |
Contributing
| Section | Audience | Description |
|---|---|---|
| Development | Developers | Contributing guidelines, testing, CI/CD workflows, and project history |
| Backend Guidelines | Developers | Project-specific coding conventions and patterns |
Reference Applications
| Section | Audience | Description |
|---|---|---|
| Vue.js Sample App | Developers | A demo SPA showing how to consume the API with the TypeScript client |
The Vue.js sample app is a reference implementation for external developers. The main user interface is the Web Interface (Blade/Livewire).
Additional Resources
- GitHub Repository — Source code and issue tracking
- GitHub Issues — Bug reports and feature requests
- Development Archive — Commit history
This documentation website is built with Jekyll and deployed automatically to GitHub Pages. For details on how it works, see Documentation Site.
License
This project is licensed under the MIT License — see the LICENSE file for details.
Last updated: March 27, 2026