A powerful, modern electronic parts inventory management system designed for makers, engineers, and electronics enthusiasts.
MakerMatrix helps you organize electronic components, track tools and equipment, manage inventory across multiple storage locations, track projects, and automate part data enrichment from supplier APIs. Built with a modern tech stack (FastAPI + React + TypeScript), it provides a beautiful, responsive interface with real-time updates and powerful search capabilities.
- π¦ Comprehensive Parts Management - Rich metadata, multi-location tracking, automatic supplier enrichment
- π Hierarchical Storage - Organize locations in a tree structure with container slot support
- π§ Tools & Equipment Tracking - Check-out/check-in system, maintenance records, calibration management
- π·οΈ Smart Label Printing - Template-based printing with QR codes for Brother QL printers
- πΎ Automated Backups - Encrypted backups with flexible scheduling (nightly/weekly/custom)
- π Real-Time Updates - WebSocket-based live synchronization across all users
- π€ Supplier Integration - Auto-enrich from DigiKey, Mouser, LCSC, Seeed Studio, Adafruit
- π³ Docker Support - Deploy anywhere with Docker or pull from GitHub Container Registry
Pull and run from GitHub Container Registry:
# Interactive quick-start
curl -sL https://raw.githubusercontent.com/ril3y/MakerMatrix/main/scripts/docker-run.sh | bash
# Or with Docker Compose
git clone https://github.com/ril3y/MakerMatrix.git
cd MakerMatrix
cp .env.example .env
docker-compose up -dAccess at: http://localhost:8080
# Clone repository
git clone https://github.com/ril3y/MakerMatrix.git
cd MakerMatrix
# Set up Python environment
python3 -m venv venv_test
source venv_test/bin/activate # On Windows: venv_test\Scripts\activate
pip install -r requirements.txt
# Set up frontend
cd MakerMatrix/frontend && npm install && cd ../..
# Configure environment (optional - defaults are fine for development)
cp .env.example .env
# Edit .env if needed - HTTPS_ENABLED=false by default (no certificates required)
# Start with development manager
python dev_manager.pyAccess at: http://localhost:5173 (HTTP mode, default) or https://localhost:8443 (HTTPS mode)
HTTPS Mode: To enable HTTPS, set HTTPS_ENABLED=true in .env and generate certificates using python scripts/setup_https.py. See HTTPS Setup Guide for details.
- Username:
admin - Password:
Admin123! β οΈ Change immediately after first login!
|
|
π¦ Parts Management
- Rich part data with specifications, datasheets, images
- Multi-location allocation with primary storage
- Automatic enrichment from DigiKey, Mouser, LCSC
- Advanced search with field-specific syntax
- QR code generation and scanning
- Price tracking and order history
- Project association
π Location Management
- Hierarchical organization (Workshop β Shelf β Drawer β Bin)
- Visual identification with emojis and images
- Container types: standard, cassette reels, single-part slots
- Auto-generate slot sequences (A1-A10, 1-100)
- Drag-and-drop reorganization
- Deletion safety with impact preview
π§ Tools Management
- Comprehensive tool inventory (hand tools, power tools, instruments)
- Check-out/check-in system with user tracking
- Condition monitoring and maintenance records
- Calibration tracking and alerts
- Multi-location support
- Usage history and statistics
π·οΈ Label Printing
- Template-based printing with 7 pre-designed templates
- QR code generation with 8 positioning options
- Real-time preview before printing
- Brother QL-800 printer support (other QL models may work but are untested)
- 12mm label support (tested and verified)
- Custom template creation
πΎ Backup & Restore
- Encrypted backups (Windows-compatible ZipCrypto)
- Comprehensive: database + datasheets + images + config
- Scheduled backups (nightly/weekly/custom cron)
- Retention policy with auto-cleanup
- Real-time progress tracking
- Quick restore with safety backup
π·οΈ Tags System
- Instant tagging with
#tagnamesyntax - Consistent color coding (hash-based)
- Autocomplete from existing tags
- Multi-entity support (parts and tools)
- Workflow state tracking
- Project organization
|
|
|
# Latest stable
docker pull ghcr.io/ril3y/makermatrix:latest
# Specific version
docker pull ghcr.io/ril3y/makermatrix:1.1.1
# Run
docker run -d -p 8080:8080 -v makermatrix-data:/data ghcr.io/ril3y/makermatrix:latestlatest- Latest from main branch or version tagsmain- Latest development build from main branch1.1.1,1.1,1- Version-specific tags (semver)sha-abc1234- Commit-specific builds (main branch only)
# Security (REQUIRED)
JWT_SECRET_KEY=your-secure-random-key
ACCESS_TOKEN_EXPIRE_MINUTES=1440
# Database
DATABASE_URL=sqlite:///./makermatrix.db
# Supplier APIs (Optional)
DIGIKEY_CLIENT_ID=your-client-id
DIGIKEY_CLIENT_SECRET=your-client-secret
MOUSER_API_KEY=your-api-key
# Note: LCSC does not require an API keyWe welcome contributions! Whether it's bug reports, feature requests, code contributions, or documentation improvements.
Quick Start:
- Fork the repository
- Create feature branch:
git checkout -b feature/amazing-feature - Follow coding standards and add tests
- Update documentation
- Submit pull request
| Component | Status |
|---|---|
| Core Features | β Stable |
| Code Quality | β 100% Type Safe (0 ESLint warnings, 0 TypeScript errors) |
| Docker Support | β Production Ready |
| CI/CD Pipeline | β Active |
| Backup System | β Complete |
| Mobile App | π§ Planned |
| Multi-Warehouse | π§ Planned |
Latest Release: v1.1.1 - Bug fix release: printing, locations, modals, and scheduled backups
This project is licensed under the MIT License - see the LICENSE file for details.
If you find MakerMatrix useful, please consider giving it a star! β
Built with β€οΈ for makers and electronics enthusiasts
π Report Bug Β· β¨ Request Feature Β· π Documentation







