Coder Social home page Coder Social logo

Comments (12)

jbtronics avatar jbtronics commented on July 20, 2024 8

My plans for the (bigger) things I want to implement in the next time would be these (ordered by descending priority):

  • Log system
  • Part parameters
  • Project system
  • Barcode generator and scanner
  • Filter system for parts

from part-db-server.

jbtronics avatar jbtronics commented on July 20, 2024 4

Filter system for parts and parametric search is now working (besides some smaller quality of life improvements). See announcement #174

from part-db-server.

jbtronics avatar jbtronics commented on July 20, 2024 2

The performance of this JSON columns is a good point. I know that some other inventory software (EleLa, page is in german) uses JSON for the part properties and it seems to work without problem.

Also I dont think Part-DB will not be used manage millions of Parts each with hundreds of properties. Also property filters will most likely be applied to parts in a specific category (e.g. all diodes with a specific forward current), so the DB has to filter just a few parts. (Also the fields like comments can not be indexed too, because they are too long. For really big inventories you would have to use a companion search database (like elasticsearch) to improve performance).

Anyway I will do some some performance test before implementing the part properties.

from part-db-server.

jbtronics avatar jbtronics commented on July 20, 2024 1

Okay, i agree that a Part-DB 1.0 release should have an part import system. A basic one (like the current import system for categories etc.) should be easy to implement (the most of the hard work like parsing the different file formats and putting the data into model objects, is done by Symfony Serializer component).

For the part properties: my plan was to use the JSON datatypes of the newer MySQL versions, which allows to save arbitrary data sets in a single column. The data inside the JSON types can be SELECTED and used in WHERE clauses similar to real columns, so the implementation of the part properties and filter them later should be rather easy (from database point of view). See https://www.mysqltutorial.org/mysql-json/ for some examples
The only downside on this approach is, that at least MySQL 5.7 (or MariaDB 10.2) is required (PostgreSQL would have that type too). For all older database we could use the doctrine fallback (using a simple TEXT field and do Json serialization in PHP). In that cases you can edit and view part properties just like the other DBs but you would not be able to filter by properties (which should be manageable)

from part-db-server.

jbtronics avatar jbtronics commented on July 20, 2024 1

@AlexanderS I have updated the list above. Everything which does not have a tick is missing yet, and needed for 1.0 milestone (as this are features existing in 0.5).

In the current versions basic part instock managment should work. It is not really polished yet and some workflows are not perfect yet (for example to remove a part from instock or move it, you still have to go to part editor). Currently I am working on part (and other entities) parameters (which ultimately should allow for parametric searches), afterwards I will propably work on project system.

from part-db-server.

coeka avatar coeka commented on July 20, 2024

I'd love to see an update system. I am running part-db on a Rpi and i am not that familiar with Linux. I'am looking forward to use the new version, but i am also afraid of updating it.

from part-db-server.

chrisnoisel avatar chrisnoisel commented on July 20, 2024

Seems reasonable to aim at the feature level of 0.5.6.
However, I would have though that the import feature would appear higher on the priority list. I don't think we can mass import parts in 1.0 yet, while it won't bother those with pre-existing databases, that makes the tool hard to use for new comers (they have to import in 0.5.6 first, then upgrade to 1.0.0, I guess)

In the "far" future, I'd like to work on custom views for categories. For example a category about MOSFET can show columns like Vgs, Ids, package, etc. If that's an interesting thing to plan we should as soon as possible decide how we should store the part information in the current database (maybe in the description field, in csv format, it's human readable and we can easily parse it) so we don't have to rebuild all our databases later.
Actually, having the ability to filter and sort with these information (like radiospare/mouser/digikey...) would be a great deal. I would probably require some kind of search library that can produce facets etc.

from part-db-server.

chrisnoisel avatar chrisnoisel commented on July 20, 2024

That's a more elegant approach to what I could have come up to, I've drop web development years ago anyway :) I've never used it so I can't say anything about potential performance issue on complex requests but we're probably good.

from part-db-server.

AlexanderS avatar AlexanderS commented on July 20, 2024

Is there a list of missing features? The only issues in the 1.0 milestone is this issue and #5.

from part-db-server.

Murmele avatar Murmele commented on July 20, 2024

@jbtronics With "Filter system for parts" you mean something i described in #77 ? Sorry than for creating the issue

from part-db-server.

Peter-Krebs avatar Peter-Krebs commented on July 20, 2024

@jbtronics Using the old version of Part-DB and eager to try the new one, thanks for making this!

Is there an update on the currently implemented features?
Thanks!

from part-db-server.

Murmele avatar Murmele commented on July 20, 2024

@jbtronics Thank you for your efforts!

from part-db-server.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.