unsubbed.co

Part-DB

Part-DB is a self-hosted finance & budgeting tool that provides inventory management system for your electronic components.

Self-hosted inventory management for electronics, honestly reviewed. No marketing fluff, just what you get when you run it yourself.

TL;DR

  • What it is: Open-source (AGPL-3.0) web-based inventory management system for electronic components — think “your component drawer, but searchable, with barcodes and KiCad integration” [1].
  • Who it’s for: Electronics hobbyists, makers, makerspaces, small engineering teams, and universities who want to stop losing track of resistors, capacitors, and microcontrollers across 40 unlabeled bins [1][2].
  • Cost savings: SaaS alternatives like Partsbox.io charge $12–30+/month for comparable functionality. Part-DB self-hosted runs on a $5–10/month VPS, or on hardware you already own, with no per-user or per-part fees [1].
  • Key strength: The KiCad integration is genuinely useful — Part-DB becomes your central parts database and KiCad reads from it directly, so your schematic tool knows what you actually have in stock [1][2].
  • Key weakness: The AGPL-3.0 license means any software that incorporates Part-DB must also be open-sourced. For hobbyists and internal use this doesn’t matter at all; for anyone building a commercial product on top of it, the license is a hard blocker [1].

What is Part-DB

Part-DB is a web application that tracks electronic components — resistors, capacitors, ICs, connectors, and anything else you store in bins, drawers, or labeled bags. You give each part a category, a footprint, a manufacturer, storage locations, price information, and optional tags. Then when you need a 10kΩ 0402 resistor for a project, you search instead of emptying every drawer.

The project started as a rewrite of the original Part-DB (pre-1.0), built on a modern PHP framework (Symfony 6). The current maintainer is Jan Böhmer, who has taken what was a legacy codebase and rebuilt it into something genuinely usable [1].

It’s a browser-based app — you install it on a server and access it from any device without installing client software. That means it works on a Raspberry Pi under your desk, on a homelab server, or on a cheap VPS. The demo at https://demo.part-db.de runs the latest master branch, updated automatically on every commit, so you can test the actual software before committing to an install [2].

The GitHub repository sits at 1,536 stars as of this review. That’s a small number by mainstream open-source standards, but Part-DB occupies a narrow niche — electronics inventory management isn’t a category with millions of potential users. Within that niche, it’s the most actively maintained self-hosted option available.


Why People Choose It

Independent reviews of Part-DB are thin. It doesn’t have the marketing budget or the general-audience appeal that gets tools written up in tech media. What you find instead are mentions in homelab forums, Reddit threads on r/selfhosted, and makerspace documentation where someone decided to standardize their component tracking.

The pattern in community discussions is consistent: people come to Part-DB after outgrowing spreadsheets. A shared Google Sheet works fine until you have multiple people accessing the inventory, until parts get pulled without being logged, until you forget what footprint something uses, or until you need to search across 2,000 part numbers instantly. Part-DB solves all of those problems without requiring a subscription.

The KiCad integration is the second most common reason people pick Part-DB specifically over alternatives. If you’re doing PCB design in KiCad — which is the dominant open-source EDA tool — you can configure Part-DB as your parts library source. KiCad then shows you what’s available in your inventory directly in the component picker [1][2]. For anyone doing regular PCB work, this closes a loop that otherwise requires manually cross-referencing two separate systems.

The third driver is the feature depth relative to the alternatives. Part-DB ships with barcode generation and webcam scanning, multi-currency pricing, automatic price lookup from Octopart, Digikey, Farnell, LCSC, and TME, a full REST API, SSO via SAML, and two-factor authentication. Most open-source tools in this category offer a subset of that. PartKeepr, the predecessor that many users migrated from, is now effectively abandoned; Part-DB even includes a dedicated PartKeepr migration tool [1].


Features

Based on the README and official documentation [1][2]:

Core inventory:

  • Parts with categories, footprints, manufacturers, multiple storage locations, and price tiers
  • Tagging and rich-text descriptions and comments
  • File attachments — datasheets, photos, 3D models, any document
  • Automatic thumbnail generation for images
  • Barcode/label generator for parts and storage locations; scan via webcam using the built-in scanner [1]
  • Parametric search: find parts by specification values, not just name or category
  • Full-text search across all fields

Integrations:

  • KiCad integration: Part-DB as a live parts database inside KiCad EDA [1][2]
  • Cloud providers: Auto-populate part data, datasheets, and pricing from Octopart, Digikey, Farnell, Mouser, LCSC, TME [1]
  • BOM import from KiCad for project management
  • REST API for external scripts and applications [1]

Project management:

  • Create projects with a bill of materials
  • See how many times you can build a project given current stock
  • Directly withdraw required components from inventory [1]

User management:

  • Fine-grained per-permission user system with groups
  • Two-factor authentication: Google Authenticator and WebAuthn/FIDO2 hardware keys; enforceable per group [1]
  • SSO via SAML (works with Keycloak, which connects to LDAP/Active Directory) [1]
  • Password reset via email

Data and compliance:

  • Event log tracking every inventory change, with the ability to revert parts to previous versions [1]
  • Import/export for parts and data structures
  • Multi-currency support with automatic exchange rate updates [1]
  • PartKeepr migration path [1]

Infrastructure:

  • MySQL, SQLite, and PostgreSQL database backends [1]
  • Docker and Docker Compose deployment
  • Kubernetes support documented
  • Responsive design for mobile and tablet access [1]
  • Multi-language UI: German, English, Russian, Japanese, French, Czech, Danish, Chinese [1]

Pricing: SaaS vs Self-Hosted Math

Part-DB has no SaaS tier. It’s entirely self-hosted software with no official managed hosting option. The cost equation is simple:

Self-hosted Part-DB:

  • Software: $0 (AGPL-3.0) [1]
  • VPS to run it: $5–10/month (or $0 if you’re running it on existing homelab hardware)
  • Your time: one-time setup, periodic updates

What you’d pay for SaaS alternatives:

  • Partsbox.io (the most direct competitor): free tier limited to 1 user and 500 parts; paid plans start around $12–30/month for multi-user access and larger inventories — pricing not published on their public page as of this review, so check directly
  • Inventree Cloud: also self-hosted-first; no official SaaS tier
  • General inventory SaaS (Sortly, Craftybase, etc.): $20–50/month for features that don’t include electronics-specific fields like footprints, datasheets, or KiCad integration

The savings calculation for a makerspace or small engineering team is real. At $20/month for a SaaS tool, you’re paying $240/year. A $6 VPS running Part-DB is $72/year — and if it runs alongside other self-hosted services, the marginal cost is even lower.

For solo hobbyists running it on a Raspberry Pi or an existing home server, the recurring cost is effectively $0.


Deployment Reality Check

Part-DB is a PHP application with a standard web stack. The Docker path is the recommended route and is genuinely straightforward for anyone who has deployed a Docker Compose application before [1][2].

What you need:

  • Docker and Docker Compose (recommended path)
  • A domain name and reverse proxy (Caddy or nginx) for HTTPS
  • An SMTP server for password reset emails
  • Approximately 512MB–1GB RAM minimum; 2GB recommended if you’re running image processing and multiple concurrent users

Database options:

  • SQLite works fine for personal use and requires no separate database server
  • MySQL/MariaDB or PostgreSQL for multi-user or production deployments [1]

What the setup looks like in practice: The official documentation at docs.part-db.de covers Docker, bare-metal Debian installation, Kubernetes (Helm), Proxmox LXC containers, and nginx reverse proxy configuration [2]. The existence of dedicated guides for Proxmox and Kubernetes suggests the maintainer is aware of where the tool actually gets deployed.

What can go sideways:

  • The SAML SSO configuration requires an intermediate identity provider like Keycloak. If you’re setting this up for a makerspace or company and want to tie it to your existing LDAP, budget extra time for the Keycloak setup, which is its own project [1].
  • The cloud provider integrations (Digikey, Farnell, etc.) require API keys from each service. Digikey in particular has a registration and approval process for API access.
  • Part-DB runs on PHP 8.2+. If you’re deploying on bare metal rather than Docker, make sure your server meets that requirement [1].

Realistic time estimate for someone comfortable with Docker Compose: 30–60 minutes to a working instance. For someone following the bare-metal guide on a fresh Debian server: 2–3 hours. The documentation quality is solid enough that the process is well-documented rather than hand-wavy.


Pros and Cons

Pros

  • Deep feature set for electronics specifically. Footprints, datasheets, parametric search, KiCad integration, BOM management — these are electronics-specific features that generic inventory tools don’t have [1].
  • KiCad integration is a genuine workflow win. Having your inventory as a live data source inside your EDA tool is something SaaS tools don’t offer [1][2].
  • Automatic part data from distributors. Pulling pricing, datasheets, and specs from Digikey, Farnell, Mouser, LCSC, TME, and Octopart directly into your inventory saves significant manual data entry [1].
  • Enterprise auth features included. SSO via SAML, WebAuthn/FIDO2 hardware keys, per-group 2FA enforcement — this is more than most self-hosted tools in this category offer, and it’s free [1].
  • REST API included. External scripts and integrations are possible without hacking around the application [1].
  • Full event log with revert. Every change is tracked; you can roll back parts to previous versions. For a shared makerspace inventory, this is the difference between accountability and chaos [1].
  • PartKeepr migration path. The old standard for this category is dead; Part-DB specifically built migration tooling for its users [1].
  • Multi-currency with automatic exchange rates. Useful for anyone buying components internationally [1].

Cons

  • AGPL-3.0 license. This is the most restrictive common open-source license. Any commercial product that incorporates Part-DB code must release its own source under AGPL. For personal and internal use this is irrelevant; for commercial use, get legal advice before proceeding [1].
  • Small community (1,536 GitHub stars). Fewer users means fewer eyes on bugs, slower plugin/integration development, and a riskier long-term bet if the maintainer steps back. The project is fundamentally maintained by one person [1].
  • No SaaS option. If you need Part-DB but can’t or won’t self-host, there’s no managed offering to fall back to. You either run it yourself or use a competitor.
  • Cloud provider API setup has friction. Getting Digikey or Mouser API access requires registration and approval processes that are outside your control [1].
  • PHP stack means it won’t be familiar to everyone who wants to contribute or debug issues. Not a problem for users, but relevant if you plan to fork or extend it.
  • Independent review coverage is sparse. There’s limited community documentation, tutorials, and third-party reviews compared to more mainstream self-hosted tools. You’re more likely to be troubleshooting from official docs and GitHub issues than from blog posts.

Who Should Use This / Who Shouldn’t

Use Part-DB if:

  • You’re an electronics hobbyist or maker with more components than you can track in a spreadsheet.
  • You’re running a makerspace or hackerspace with shared component inventory and multiple users who need controlled access.
  • You design PCBs in KiCad and want your inventory integrated into your parts library.
  • You’re a small engineering team or university lab managing physical electronic components.
  • You’re already self-hosting other tools and adding one more Docker container is trivial.
  • You’re migrating from PartKeepr and need a maintained replacement.

Skip it (consider Partsbox or a SaaS tool) if:

  • You’re not comfortable running a self-hosted web application and don’t have a technical person to help.
  • You need a managed hosting option with someone else responsible for uptime and backups.
  • Your inventory is small enough that a well-organized spreadsheet still works.

Skip it (consider InvenTree) if:

  • You need general-purpose inventory management beyond electronic components. InvenTree handles a broader range of parts and has a larger community. Part-DB is specifically electronics-focused.
  • You want a more active community with faster third-party plugin development.

Skip it entirely if:

  • You’re building a commercial product and need to embed the inventory engine. The AGPL license is a genuine constraint here.

Alternatives Worth Considering

  • InvenTree — general-purpose open-source inventory management with broader category support and a larger community. Less electronics-specific (no parametric search for component specs, less deep distributor integration), but more actively contributed to. The practical choice if your inventory goes beyond electronic parts.
  • PartKeepr — the predecessor that Part-DB was built to replace. Now effectively unmaintained. Don’t start new deployments here; migrate existing ones to Part-DB.
  • Partsbox.io — commercial SaaS with a free tier. Polished, hosted, no maintenance required. Costs money at any meaningful scale and lacks the KiCad integration depth of Part-DB.
  • Spreadsheet + folder of datasheets — honest answer for solo hobbyists with under a few hundred parts. Zero setup, infinitely flexible, falls apart above ~500 parts or with multiple users.
  • Homebox / Grocy — general-purpose home inventory tools. Not electronics-specific; no parametric search, no KiCad integration, no distributor price lookup. Wrong tool for this job.

Bottom Line

Part-DB is a well-built, actively maintained tool for a specific problem: tracking electronic components in a shared or personal inventory. It does that job thoroughly — better than any SaaS tool I’m aware of for the KiCad integration alone, and with enterprise authentication features (SSO, WebAuthn, per-group 2FA) that most comparable tools don’t bother with. The trade-offs are real: the AGPL license limits commercial use, the community is small, and you’re betting on a single maintainer’s continued involvement. But for its target users — hobbyists with component drawers that are becoming unmanageable, makerspaces that need multi-user controlled inventory, and engineers who want their parts database connected to their EDA tool — Part-DB is the most complete self-hosted answer available. The SaaS math is simple: a $6 VPS replaces a $20–30/month subscription for a tool that does more in the electronics domain than those subscriptions offer.

If setting up a PHP application on a Linux server is the blocker, that’s exactly the kind of one-time deployment work that upready.dev handles for clients.


Sources

  1. Part-DB GitHub Repository — README and project documentation (1,536 stars, AGPL-3.0 license, maintained by Jan Böhmer). https://github.com/part-db/part-db-server
  2. Part-DB Official Documentation — features, installation guides (Docker, Debian, Kubernetes, Proxmox, nginx), usage documentation, KiCad integration, API reference. https://docs.part-db.de/
  3. Part-DB Live Demo — runs latest master branch, login: user / user. https://demo.part-db.de/

Features

Authentication & Access

  • LDAP / Active Directory
  • Single Sign-On (SSO)
  • Two-Factor Authentication

Integrations & APIs

  • REST API

Collaboration

  • Comments & Discussions

Media & Files

  • Image Processing

Localization & Accessibility

  • Multi-Language / i18n

Mobile & Desktop

  • Responsive / Mobile-Friendly