OpenSource-Hub
P

Part-DB-server

1.6k stars·Developer Tools·SHA-256 checksum verified

Open-source inventory management system for electronic components. Web-based, supports barcodes, user permissions, SSO, and KiCad integration.

Smart Download

Visit Project Homepage

No installer available yet — head to the source repository

Self-hosted electronic component inventory with barcodes, permissions, and KiCad integration.

Core Features

  • Organize parts by category, footprint, manufacturer, storage location, and tags
  • Built-in barcode/label generator and webcam scanning
  • Granular user permissions with two-factor authentication and SAML SSO
  • Deep KiCad integration for real-time stock visibility and BOM import
  • Automatic part info/pricing from Octopart, Digikey, Farnell, etc.

What It Can't Do

  • Use HTTPS in production to protect credentials. 2. SQLite is fine for light use; switch to MySQL/MariaDB for concurrent access. 3. Always backup database before upgrading. 4. Change the default admin password immediately after first login. 5. If using Docker, mount a persistent volume for database and uploads.

Use Cases

  • Hobbyists managing a personal component collection with barcode scanning
  • Makerspaces or labs with shared inventory and controlled access
  • Small companies tracking BOMs and integrating with KiCad design flow
  • University labs handling communal component stock with checkout logs

Detailed Introduction

Part-DB is a web-based inventory management system designed specifically for electronic components. It allows hobbyists, makerspaces, and small companies to organize parts by categories, footprints, manufacturers, and storage locations. Key features include barcode/label generation, webcam scanning, granular user permissions with two-factor authentication, SAML-based SSO (e.g., via Keycloak), import/export (including KiCad BOM), project management with bill of materials tracking, event logging, rich text descriptions, parametric search, automatic thumbnail generation, and cloud provider integration (Octopart, Digikey, etc.) for automatic data retrieval. It supports MySQL, SQLite, and PostgreSQL databases, and offers a REST API for external scripts. The modern PHP/Symfony 7 rewrite replaces the legacy version and is the recommended one.

Troubleshooting & FAQ (2)

Troubleshooting
How to fix '403 Forbidden' error when saving user edits in Part-DB 2.9.1?

The error is caused by a missing 'edit' operation in config/permissions.yaml for users. Add this under users: operations:: edit: label: "perm.edit", alsoSet: ['read', 'edit_username', 'edit_infos'], apiTokenRole: ROLE_API_ADMIN. Then update permissions_data JSON for affected users/groups by setting "edit": true in the users section. Restart Part-DB.

GitHub Issue #1327
Troubleshooting
How to fix Part-DB Error 500 and 'Provider with key digikey already registered' after upgrading?

This error appears in Part-DB v1.16+ due to a duplicate Digikey provider registration when viewing a part. A temporary workaround is to remove the duplicate registration from the source code: locate the file that defines the Digikey provider (commonly in src/Providers/ or config/services), find the duplicate 'digikey' key entry, and delete or comment out one of them. Then clear the cache by running php bin/console cache:clear (in Docker, exec into the container and run this). Alternatively, downgrade to version 1.15 until an official fix is released. Track GitHub issue #919 for a permanent solution.

GitHub Issue #919

Tags

inventory-managementelectronic-componentsopen-sourceweb-appself-hosted

Getting Started

1

Download installer

Click the button above to download the installer for your system

2

Install the software

Double-click the downloaded installer and follow the prompts

3

Option 1 (Docker): docker run -d -p 8080:80 jbtronics/part-db1

4

Option 2 (Manual): Clone repo to web server, configure PHP 8.2+, database, and build frontend with Yarn

5

Open browser to http://your-server:port, login with default admin account, follow setup wizard

Install Guide
  1. Option 1 (Docker): docker run -d -p 8080:80 jbtronics/part-db1
  2. Option 2 (Manual): Clone repo to web server, configure PHP 8.2+, database, and build frontend with Yarn
  3. Open browser to http://your-server:port, login with default admin account, follow setup wizard
File Integrity

Checksum not available

This project has not published a SHA-256 checksum on its GitHub Release page

SHA256 Checksum

No checksum available

Download directly from GitHub Releases and verify file integrity yourself

All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.

Open Source Transparency

View GitHub Source
Environment Guide

Uninstall Info

For Docker: docker stop <container> && docker rm <container>. For manual: delete project folder, drop database, remove web server config. Always backup data first.

No Extra Dependencies

Ready to use after download. No additional runtime required.

Project Info
LicenseGPL-3.0
Last Updated2026-06-26 09:55:12
GitHub Repository

Having issues? Check the FAQ below

2 FAQs

Similar Projects