Settings

Theme

Shelf – open-source asset management software

github.com

320 points by CarlosVirreira 2 years ago · 78 comments

Reader

insouciance586 2 years ago

Another great open source asset management system to check out is Snipe-IT. https://github.com/snipe/snipe-it

I have used it for years both self hosted and with them hosting and it's been a great low cost solution for asset management.

  • batrat 2 years ago

    We have more than 6k assets, 2k+ users, hundreds of licences, component's, and it's still fast. LDAP, api, tons of filters and exports possibilities, selfhosted. Best solution IMO.

  • sdesol 2 years ago

    It also has a healthy community around it as the following shows:

    https://devboard.gitsense.com/snipe/snipe-it

    Full disclosure: The insights are from my tool.

    • rapnie 2 years ago

      If I may provide a bit of feedback: Provide more background about GitSense. Who is behind it, what is the privacy policy. Things like that.

  • trog 2 years ago

    Thanks for this recommendation. Been looking at asset management systems so Shelf caught my eye but the install process looks too painful, whereas this one I can just drop easily onto an existing LAMP server.

    • ticoombs 2 years ago

      Pay them to host it. $400/year. Literally a rounding error. Works out cheaper than a cloud compute and SQL server

      • trog 2 years ago

        I have a $6/mo VPS on which I think I can run Snipe quite happily. I get that some people are OK to pay significantly more for services like this but I have the resources and interest in self-hosting to make it worthwhile.

      • manapause 2 years ago

        If your company is of type "enterprise" i.e. large enough to have a compliance department or security-conscious enough to go through a pre-sale vendor assessment, and you intend to "sync" users from LDAP/AD with the intent to use your AD user to log in, I strongly urge against hosting on their cloud platform. The LDAP Sync job pulls the password plaintext using the OpenLDAP protocol encrypts it with an APP_KEY they control, and stores that password in the Snipe-IT database. If you ever had an AD user who couldn't log into SnipeIT, then you "sync'd" users And it magically worked - chances are that user changed their password and the correct password needs to be re-acquired before the LDAP user-bind will be successful.

        In our assessment we found that these APPKEYs are also included in the backup file - which makes the SnipeIT backup ZIP files a vector for exposing all users and passwords (as well as all encrypted fields data) because of a default setting by the framework's backup provider.

        That said - if you are concerned about security, you will be on-prem or within your own cloud provider to begin with. The SnipeApp company offers an "enterprise" level support at a somewhat reasonable rate for big companies, and they were a great help assisting with our installation and integrating the SnipeIT API to import new devices and licenses automatically in a way that we can control from say a PO.

        This password issue may not be a problem for you as I understand they now have connectors for SSO or another OAUTH provider. That and the fact that they asked us to share our backup via email during onboarding and they did not specify to keep the secrets out of the backup made our decision to go in-house. Still a good, scrappy product, and when we asked them if they had access to our company's passwords that was not disclosed, we didn't get a response. That's OK - and it was a good lesson for my team in evaluating an open source framework behind the product vis-a-vis "trust but verify."

        Its always going to be a vector of our own partial design (and/or someone we are paying), a rogue backup source of truth that is ejected into the ether like atoms forming salts in an acid-base reaction.

Daviey 2 years ago

Visually, it looks GREAT. Thanks for sharing this. I do care more about the feature set than the UI tho', so I have some questions.

AM to me is the foundational part of any security management. I care about 3 main things:

  1) API support (for custom tooling)
  2) Integration with other tools (Jira, Salesforce, etc)
  3) Relationships/Dependencies with other assets (to determine the blast radius if there is an incident, or if this asset can be deco'd and what the impact would be)
Assets are more than just devices, are these catered for?

The feature set looks like it steps into EDM, which is a totally different problem space to AM IMO.

  • canadianfella 2 years ago

    > Assets are more than just devices, are these catered for?

    What does that mean?

    • Daviey 2 years ago

      Each organisation has a different interpretation, with some being as broad as anything which has an owner and would have an impact to the business if confidentiality, integrity or availability of the asset is affected.

      However, the best definitions typically come from NIST which, as a non-US resident, I still recognise are leaders in this space.

      https://csrc.nist.gov/glossary/term/asset

oldandtired 2 years ago

Unfortunately, both shelf and snipe are limited asset management systems that do not cover the broader asset management situations and issues.

Having worked in asset management at one time, the field has some quite difficult aspects that are often missed by these relatively simple systems.

I am not disparaging what either of these systems do. There is a lot of time and effort that has been put into them. However, full blown asset management is a much bigger area than most people understand or have built systems for.

One asset class that can act as a test case for any asset management system that you might like to try your hand at building is a multi-story multi-use building. Once you get into the weeds on this one, you begin to see just how complex asset management is.

One feature of asset management is the oft forgotten maintenance sequences and forecasting of maintenance and refurbishment.

A number of other comments here have commented on such aspects

  • m-p-3 2 years ago

    Agreed, asset management isn't only about knowing and tracking what the business possesses. A good system

    1. Separates, but inter-connect the Asssets and CI. An asset will never change during its lifecycle. A CI is the actual configuration(s) of an asset. It could be a simple laptop (asset) with a standard OS (CI, one-to-one relationship), or it could be a server (asset) with multiple virtual machines (CI, one-to-many relationship)

    2. Will handle the entire lifecycle of the equipment.

    3. Will be an integral part of the purchasing, receiving and decommission process.

    4. Will allow you to predict and plan the replacement of old assets with a high level of confidence.

    The product presented by OP only touches a sliver of what asset management is. For some it might be just enough, but most don't realize how complex it can become.

    • metisto 2 years ago

      These are fantastic insights!

      I'm aware of Snipe-IT, but could you recommend any other open-source solutions?

      I have a hunch that the scope and requirements of such software are often tailored exclusively to enterprises, which only comes with a price tag.

      • m-p-3 2 years ago

        On the open-source side I'm ot aware of any solution that covers everything like this from one end to the other.

_joel 2 years ago

IT wise, It's been a fair few years since I've been in a department that does asset management, we used to use GLPI with it's warts and all, which got replace with https://github.com/netbox-community/netbox

zie 2 years ago

I guess I'm old and boring. I have a storage.txt file that just has a box#(literally written on the box/object) and then a description, tab seperated. That's the entirety of my inventory management. Searching through the text file is easy peasy.

sneak 2 years ago

The database backing this, Supabase, describes itself as "stable enough for most non-enterprise use-cases".

I suppose that means this tool is "stable enough for most non-enterprise use-cases", which means I can't use it despite wanting to.

  • spiderice 2 years ago

    The capabilities of Shelf are going to be the limiting factor to enterprise use far before Supabase/Postgres will be.

  • kiwicopple 2 years ago

    I assure you that you're not going to reach the level of enterprise we're talking about there (where some sort of sharding strategy becomes important).

    Basically - if you would run it on RDS, you can run it on Supabase

  • makestuff 2 years ago

    Supabase uses PostgreSQL and they support offboarding from Supabase so you probably could make this enterprise ready.

  • alostpuppy 2 years ago

    On the pricing page, the paid plans are “production ready.” I wonder how they define an enterprise.

poidos 2 years ago

Is there something like this but for “home” usecases? What’s in my pantry, how much of y do I have left in my medicine cabinet, etc.

  • WheatMillington 2 years ago

    As anyone who has done inventory management could tell you, the admin involved in keeping your pantry inventory up to date would massively outweigh any utility you'd get from this.

    • joshstrange 2 years ago

      Yeah, I wrote a simple pantry manager that used both barcodes on the food items (used an api to lookup and pre-fill basic info) and then small QR codes that I added to the item (to track the individual instance), it was my "pandemic project". It was cool but not the most user friendly (unsurprising, UI/UX are not my strong suits) and it was a little tedious. It was relatively easy to write through and I enjoyed working on it. I was also tracking things like expiration with the intention to have a list of things I should focus on using first.

      At the end of the day I abandoned it but the tech stack and the hardware I bought (small Dymo label printer) actually led to me building a side business on top of some of the basic ideas behind it which has grown steadily since.

    • brunoqc 2 years ago

      Maybe it could be worth it for only some items that you always forget to use before they expire. or if it's for saving money by waiting for stuff to get on sale, maybe only for items that are really worth it.

      • winphone1974 2 years ago

        I built this for my chest freezer years ago (including the domain chowcaster.com), which used a barcode scanner to add/remove items. It worked better than a pantry because 1. Less items and typically higher cost, 2. You usually make a trip to your freezer and 3. It's hard to know what's in there. It basically replaced the clipboard my mom still uses to track her freezer inventory.

    • esafak 2 years ago

      The only way it would make sense is if you took a video/picture of it and software did everything else.

  • tristor 2 years ago

    Same question, but more focus on home electronics. I'd love to track my appliances and home lab setup better than I do today in just a spreadsheet. It'd be nice to get depreciation / warranty tracking, diagrams which show tags/position in the rack for my home lab. Basically similar to enterprise asset management just on a much smaller scale and without needing to operate a full ITIL shop + deploy enterprise scale.

    I once, many moons ago, barcode asset tagged all my stuff and was scanning it into an app that could track where it was in your house on a basic 2d wireframe home, which let you report for insurance scheduling purposes. Besides just tracking generally, knowing what stuff you have that is valuable, depreciable, and could be stolen/destroyed is very useful data even for individuals.

    • socks 2 years ago

      I have had some ideas over the years around home electronics (tools and components) management.

      I was thinking about building myself a system of QR labelled ziplock bags (inc. antistatic ones) and QR labelled containers.

      The main concept of my particular system would be to have a camera covering my workspace, and a camera covering a storage area for containers.

      The system would automatically track which QR labelled bags are in which QR labelled container, and also keep a 'last seen' graph of bags that are near other bags, and containers near other containers, so that you don't have to spend too much effort maintaining the system, and when you want a list of things to work with, the system could help you perform a 'computer enhanced rummage' by using your smartphone and have it highlight containers that you want, and ziplocks that contain the things on your list.

      Take all those ziplocks out, lay them on your workspace, boom, they are all checked out of the containers by the overhead camera.

      Place the containers back on your shelves, boom, the shelve cameras know the positions of the boxes.

      When you are done with the items, place a box on your workspace (recognised by camera) and put the packets back in the one box (those packets then checked in to that box).

      I don't have a nice workspace to build the system yet, but when I settle into a place I am going to spend more time thinking about it.

    • nabilt 2 years ago

      Someone mentioned https://inventree.org which looks cool, but there is no distributor API connections AFAIK. I really wanted to ability to scan my Digikey bags and have it auto fill all of the parameters so I made a super basic app to do that. I'm planning on open sourcing it once I clean it up.

  • malermeister 2 years ago

    https://grocy.info/

    This is what you're looking for.

  • emmo 2 years ago

    Homebox (https://github.com/hay-kot/homebox) is one I've been looking at recently. Haven't actually set it up yet though, so YMMV.

  • jabroni_salad 2 years ago

    It's only really good for groceries, but if you use Paprika's shopping list it will track what you have at home and subtract from it as you complete recipes.

  • techplex 2 years ago
  • brunoqc 2 years ago

    maybe grocy

  • unixhero 2 years ago

    A wiki or a spreadsheet

  • gffrd 2 years ago

    Yes. They're on your face right now, above your nose.

thetinymite 2 years ago

Seems interesting. It would be nice if a user could record maintenance events. For example: rotate tires, change oil. Also, I would like to upload user manuals - not just hyperlinks.

  • SoftTalker 2 years ago

    Request Tracker is an older ticket system that also does asset management and can associate tickets with assets.

    It can be rather tedious to configure, as I recall, but it can do almost whatever you want. Hope you know some perl. Have not used it in at least 5 years.

    https://bestpractical.com/request-tracker

viraptor 2 years ago

This looks great - I was looking for something like this and other solutions are split into pretty much a) way too expensive for a small business using it casually b) very basic systems without mobile support. Ended up just using Airtable directly with the mobile app - not amazing, but also not bad at all.

One thing I couldn't figure out from the website/GitHub - can I attach more than one image to the item? For example I'd like to save both the photo and the pdf of the invoice.

  • CarlosVirreiraOP 2 years ago

    We are planning on improving the UX of our comment module, so you can drag images or upload images as a GitHub comment on your asset page.

edgarvaldes 2 years ago

The other day I was looking for a Windows desktop app for managing home assets (Where is this tool? What is inside my box A1 located in room B?)

There is very little software like that. Everything is a website or a smartphone app. I want a Windows desktop program.

  • atoav 2 years ago

    For electronics or manufacturing I can recommend inventree. https://inventree.org/

    It can even do things like defining projects that are made of sub-components that are made of parts you may or may not have on stock (and if you added a prize for each of the parts it will spit out a total cost). It can handle prize brackets etc.

    For a most basic system or hobbyist needs this might be total overkill tho.

    Why not start an excel sheet with everything you have and put an location next to the thing? The major work with such systems tends to be first entry and then keeping things up to date, so starting on a small subset of things and trying it out would be a wise way to go about it.

  • vorpalhex 2 years ago

    Honestly, some version of a sqlite database and form maker is probably all you need.

    If Docker is an option and you only need it for a single machine, maybe NocoDB?

  • CarlosVirreiraOP 2 years ago

    We will be releasing a desktop app for this. However, it will require internet access.

725686 2 years ago

What do you guys use for managing digital assets, and by that I mean what software is installed where, what usernames/passwords are required for operating (databases, 3rd party API, etc), which versions, etc?

  • tomjakubowski 2 years ago

    Those are notes in my big digital notebook (currently managed by Obsidian)

  • 9dev 2 years ago

    Notion. I have a network of related databases and knowledge base style articles, interlinked as much as possible so as to allow clicking through. This works pretty well for us.

  • whyfor_butToBe 2 years ago

    1pass

    And infrastructure as code

thepra 2 years ago

Category selection and location selection is sketchy at best, it's using those advanced selection lists but at the first tap of the field, the list opens, the keyboard opens and the list closes, only at the second tap I get an open selection list -_-

m-p-3 2 years ago

I tried the hosted demo and IMO it feel way too barebone.

* No basic fields like a serial number, model, etc * You can't change the color of a category once created * It lacks the ability to make assets templates * No obvious ways to create custom fields

  • ckluis 2 years ago

    Having worked with EAM (Enterprise Asset Management) & CMMS (Computerized Maintenance Management Software) for 13+ years. I agree completely. It also completely misses the “management" part by not having any type of maintenance schedules, tasklists, & safety/PPE information.

  • Solvency 2 years ago

    No custom fields is a wild oversight. Yowza.

iFire 2 years ago

https://github.com/Shelf-nu/shelf.nu/blob/main/LICENCE

License MIT <3

browningstreet 2 years ago

Click through

Look for screenshot

Don't find

Close tab

robinhood 2 years ago

Looks beautiful. Also, congrats on shipping it with a MIT license, which is great.

One downside: the blog entries look like it was written by ChatGPT or similar.

deckar01 2 years ago

Replacing QR stickers with a visual tagging model seems like it could reduce the friction of data entry dramatically.

  • CarlosVirreiraOP 2 years ago

    Could you tell me more? I do not know much about visual tagging model.

    • deckar01 2 years ago

      It should be possible to use the vector embeddings produced by an image to text (AI) model as database identifiers. The text tags produced by this type of embedding could replace most human metadata entry required for object registration with AI suggested metadata and human approval.

1z4n4g1 2 years ago

What's the best way to get involved in the development of Shelf? Looks like a fun project to contribute to!

xupybd 2 years ago

Can anyone recommend a warehouse management system that's open source?

atentaten 2 years ago

Nice! I was thinking of building something like this at some point.

CarlosVirreiraOP 2 years ago

Hopefully someone can gain value from this!

  • figassis 2 years ago

    I will definitely use this to manage both my personal and business assets. Thank you for sharing, this is great work.

nektro 2 years ago

and not a single screenshot in the readme

edit: oh its only on the website

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection