6 Jun 2011 8:36 AM #1
PartKeepr: Open Source Electronic Component Inventory Software based on ExtJS 4
EDIT: We renamed the software from PartDB2 to PartKeepr.
our local hackerspace is currently working on an electronic component inventory software based on ExtJS4. The project is open source, feel free to participate.
"PartKeepr is an electronic part inventory management software. It helps you to keep track of your available parts and assist you with re-ordering parts. PartKeepr is designed for hackerspaces with multiple users, but you can also use it to manage your personal electronic part inventory."
Demo Site: http://demo.partkeepr.org
Note that the demo site is updated once an hour, so your session will vanish at :00 each hour. You can play around as much as you like, you can't break things. Please note that the demo data is held in german.
Last edited by Felicitus; 25 Dec 2011 at 12:33 AM. Reason: Link to the downloads
13 Jun 2011 11:52 PM #2
12 Jul 2011 1:19 AM #3
We added quite some new things over the last month. Noteworthy:
* Ability to directly capture images from an attached webcam
* RSS feed of newly added parts
* Many small improvements
Unfortunately, we are still hit by the ExtJS scrollbar bugs. How to reproduce: Pick any category with a part count less than the screen can handle (so that the scrollbar disappears), then pick any category with a high part count (so that the scrollbar appears). From that point on, the scrollbar becomes unresponsive. I have no idea how to fix that, I already tried to call invalidateScroller() as well as hide/show scrollbars, but no effect.
EDIT: I just realized that the scrollbar bug is by no means easily reproducable
13 Jul 2011 6:30 AM #4
Wow you have been busy I like your application a lot, very tidy and easy to use. Did you have use the MVC architecture in the project with extjs 4? I'm going to download your source and have a look when I get time, seems like the kind of app which inexperienced users like me can get some real benefit from. Well done mate, solid effort all round.
20 Jul 2011 3:46 PM #5
1 Aug 2011 7:51 AM #6
Hmm.. I'm experiencing apparently the same scrollbar problem. Only in my app it's much harder to reproduce, but the general steps seem similar - going from a page without scrollbar to a page with scrollbar...
Ed, when's 4.1 expected?
Thanks and best regards,
P.S. Yeah - the app looks really tidy
17 Aug 2011 1:39 AM #7
Ed, could you edit the topic title? PartDB2 is the old project name, PartKeepr is the current one.
Too bad that there's no hotfix for the scrollbar issue - I might need to workaround that by restricting the number of results per page (which is a very dirty approach). Additionally, there seem to be some issues regarding Ext.draw.* stuff (either real bugs or documentation issues, I'm not sure - I have given up after several hours and moved on to other parts).
I'm looking forward to create a 1.0 release including an installer as soon as possible, but I don't think it'll be possible prior SenchaCon (which I'd love to attend and/or give a talk about PartKeepr, but Open Source developers are poor )
17 Aug 2011 1:49 AM #8
Thank you very much! No, I'm not using the MVC structure yet, but planning to do so.
Although PartKeepr is already pretty solid OO, there is still much potential for improvements. I try to avoid as much duplicate code as I can, so there might be more cleanups in the future.
Things that might be interesting for others:
* I'm using a tabbed editor model, which means that a Ext.data.Model record (may it be flat or with relations) can be edited in its own tab - there's already some basic support for things like "You have unsaved changes in <model> - do you really wish to close this tab?", but unfortunately there is some bug with the dirty flag which I need to address.
* A model can be serialized including relations - so you actually can build up a whole tree of objects and push them to the server. A good example for this is the Part model, which contains references to manufacturers, distributors, attachments and parameters. Nothing of those are transmitted to the server unless the user clicks "save" (except images, which are stored in a temporary table on the server) - and the "save" process transmits a nested object to the server, no individual requests. Multiple requests are troubling when dealing with database transactions (which PartKeepr actually uses in some places).
29 Aug 2011 4:34 AM #9