Forum: PC Hard- und Software Web basierte Inventarisierung


von Andreas E. (andreas_e660)


Lesenswert?

Hallo zusammen,

ich habe mir eine kleine Web-Anwendung zum Inventarisieren von Bauteilen 
gemacht. Ausschlaggebend war meine teilweise Unordnung, wo ich manche 
Platinen (z.B. DC/DC Wandler) mehrmals kaufte um später zu bemerken, 
dass ich diese schon hatte. Widerstände, Kondensatoren, etc. sind 
ordentlich sortiert. Ich habe aber etliche Boxen/Behälter wo 
verschiedene Dinge drinnen sind und ich mich zum Teil nicht mehr dran 
errinnern konnte.

Nun kann ich bestimmte Module/ICs, etc. über die Web-Anwendung 
inventarisieren und klebe einen zugehörigen QR Code auf die Box. Ich 
kann den entweder fotografieren um zu sehen was der Inhalt der Box ist 
oder ich kann über die Web-Anwedung Teile suchen und finde so die 
zugehörige Box.

Mir ist klar dass es hier sicher viele verschiedenste Lösungen gibt. 
Aber Teil des Hobbys ist bei mir eben auch solche Dinge zu machen, weil 
es mir Spaß macht.

Falls jemand es ausprobieren oder verwenden will. Der Programmcode steht 
OpenSource zur freien Verfügung:
https://github.com/chiefenne/electronics_inventory

LG/Andi

von Silvester (Gast)


Lesenswert?

Andreas E. schrieb:
> und klebe einen zugehörigen QR Code auf die Box.

Eine lesbare Inhaltsliste darauf zu kleben ist zu einfach?
scnr

von Reinhard S. (rezz)


Lesenswert?

Silvester schrieb:
> Andreas E. schrieb:
>> und klebe einen zugehörigen QR Code auf die Box.
>
> Eine lesbare Inhaltsliste darauf zu kleben ist zu einfach?
> scnr

Für manche Sachen sicher eine Idee, aber dürfte oft auch so aktuell sein 
wie die Zeitung von gestern.

von Clemens S. (zoggl)


Lesenswert?

Sehr praktisch.

Werde mich morgen noch länger damit spielen.

Vorschläge bis jetzt:
+/- um ein Teil schnell auszulagern
Einen definierbaren Mindestlagerbestand

von Ein T. (ein_typ)


Angehängte Dateien:

Lesenswert?

Andreas E. schrieb:
> ich habe mir eine kleine Web-Anwendung zum Inventarisieren von Bauteilen
> gemacht.

Dein Code gefällt mir richtig gut, viel Erfolg mit Deinem Projekt.

Für mich gibt es jedoch einige kleine Wermutstropfen.

Erstens SQLite, da hätte ich zu einem DB-agnostischen ORM wie SQLObject 
oder SQLAlchemy gegriffen, die auch "echte" Datenbanken wie PostgreSQL 
können.

Zweitens finde ich es nicht so elegant, daß der Pfad zur 
SQLite-Datenbank fix vorgegeben ist (DB_PATH in db.py(8); das hätte ich 
eher als DB-Klasse gebaut, die im Konstruktor den Pfad (oder den URL für 
einen ORM) erhält.

Drittens bin ich ein wenig unglücklich mit der festgezurrten Festlegung 
von pbkdf2_sha256, da würde ich eher einen einstellbaren 
Hashing-Algorithmus wie bcrypt [1] mit einer konfigurierbaren Stärke 
empfehlen.

Weil ich allerdings nicht nur herummäkeln mag, möchte ich gerne die 
beiden anhängenden Dateien beitragen. Kommentare zu Beginn der Dateien 
geben eine kleine Einführung, wie man sie benutzen kann. Viel Spaß! :-)

[1] https://de.wikipedia.org/wiki/Bcrypt

von Andreas E. (andreas_e660)


Lesenswert?

Silvester schrieb:
> Andreas E. schrieb:
>> und klebe einen zugehörigen QR Code auf die Box.
>
> Eine lesbare Inhaltsliste darauf zu kleben ist zu einfach?
> scnr

Wenn sich der Inhalt der Box ändert (z.B. Module die vorher nicht 
gelistet waren), müsste ich ja dann die Inhaltsliste neu ausdrucken und 
aufkleben. So gebe ich das eben in der Datenbank ein und beim Auslesen 
des QR Codes bekomme ich z.B. am Handy den aktuellen Inhalt gelistet.

In der Hauptsache werde ich es aber so verwenden, dass ich in der 
Datenbank suche, ob ich ein bestimmtes Modul oder IC habe. Dann finde 
ich leicht die Box in der es drinnen liegt.

Die Funktion den Boxinhalt zusätzlich auszudrucken gibt es in dem Tool 
bereits, damit wie richtig festgestellt ein schneller Blick reicht. Ich 
verwende das so, dass ich zusätzlich zum QR Code z.B. bei einer Box 
"Level shifter, ADC, GPIO Expander" draufschreibe, aber nicht alle 
Details. Prinzipiell ist das also vorgesehen und auch in der Anwendung 
beschrieben.

: Bearbeitet durch User
von Andreas E. (andreas_e660)


Lesenswert?

Es gibt sicher viele Dinge die verbesserungswürdig sind. Vorschläge die 
ich leicht einbauen kann werde ich einfließen lassen.

Ich bin aber sicherlich nicht in der Lage da eine richtig gute 
Datenbanksoftware inkl. Webinterface zu entwickeln. Ich mache das zwar 
mit KI-Unterstützung (Github-Copilot), aber für ordentliches prompten 
der KI fehlt es mir an Kompetenz (Web- bzw. Datenbankprogrammierung, 
etc.).

Für mich ist wichtig, dass ich ein bisschen mehr Übersicht in meinen 
Bestand bekomme und ein bisschen mit dem Programmieren/Hobby 
herumspielen kann.

Eigentlich ist die Software nur für das Heimnetzwerk gedacht, da sollte 
die Identifizierung nebensächlich sein. Fall ses jemand anders verwenden 
will, habe ich eben eine kleine Login Möglichkeit vorgesehen (die kann 
aber per Umgebungsvariable deaktiviert werden). Bcrypt etc. kann einfach 
nachgerüstet werden. Jeder wie er mag, die Software ist ja frei zur 
Verfügung. Ich würde entsprechende Pull requests auf Github einfliessen 
lassen.

LG/Andi

: Bearbeitet durch User
von Wolf17 (wolf17)


Lesenswert?

Andreas E. schrieb:
> Ausschlaggebend war meine teilweise Unordnung, wo ich manche
> Platinen (z.B. DC/DC Wandler) mehrmals kaufte um später zu bemerken,
> dass ich diese schon hatte.
Meine Datenbank ist die Tüte. Z.B.eine Tüte Step Up und eine Step Down. 
Das funktioniert seit Jahren ohne PC. Bei Überfüllung wird geteilt, z.B. 
Step Down out 5V.
Einmal beim Einlagern und dann ein zweites mal beim Auslagern jedes mal 
eine Datenbank zu aktualisieren, wäre mir zu aufwendig.
Wichtig ist mir nur, nach dem Kauf jede Baugruppe mit Kurzdaten zu 
beschriften, um in der Tüte was Passendes herauszusuchen.

von Ein T. (ein_typ)


Lesenswert?

Andreas E. schrieb:
> Ich bin aber sicherlich nicht in der Lage da eine richtig gute
> Datenbanksoftware inkl. Webinterface zu entwickeln.

Doch, das glaube ich schon.

> Ich würde entsprechende Pull requests auf Github einfliessen lassen.

Darauf werde ich mal einen Freund und Kollegen ansprechen, der auch hier 
im Forum unterwegs ist -- vielleicht hat er ja Zeit und Lust. Ich selbst 
bin im Moment nämlich leider selbst in Zeitnot. :-)

von Hannes J. (pnuebergang)


Lesenswert?

Ein älteres webbasierendes Programm:

https://www.mikrocontroller.net/articles/Part-DB_RW_-_Lagerverwaltung

Wenn es nicht webbasierend sein muss, EleLa:

https://www.mikrocontroller.net/articles/Elektronik_Lagerverwaltung

Mittlerweile in einer Free- und einer kommerziellen Pro-Version 
erhältlich. Die Free-Version enthält alle Features der vorherigen 
Version.

https://elela.de/

: Bearbeitet durch User
von Markus E. (markus_e176)


Lesenswert?

Respekt dafür, so ein schickes Projekt praxistauglich allein auf die 
Beine zu stellen:)

Wenn es dir um eine direkt funktionierende, webbasierte Lösung geht, 
kann ich Inventree empfehlen.
Ist genau für solche Zwecke gedacht und arbeitet nahtlos mit KiCAD 
zusammen (falls das hilft).

Vielleicht kannst du die Kräfte bündeln und dort deine Ideen einbringen, 
dann kommt vielleicht etwas noch besseres dabei heraus:)

von Andreas E. (andreas_e660)


Lesenswert?

Markus E. schrieb:

> Wenn es dir um eine direkt funktionierende, webbasierte Lösung geht,
> kann ich Inventree empfehlen.

Inventree habe ich nicht gefunden (da sieht man schon wo es klemmt bei 
mir, hihi) als ich nach etwas suchte. Danke für den Top Tipp, vielleicht 
etwas zu "gross" für meinen Bedarf.

Ich werde das aber auf jeden Fall auf dem Repo verlinken, damit Suchende 
das sofort sehen.

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.