brmbar-github/brmbar3
2015-12-13 16:36:50 +01:00
..
brmbar brmbar-cli undo: New feature 2015-12-13 16:36:50 +01:00
brmbar-gui-qt4 Add missing collateral changes for Transfer 2015-12-13 16:10:03 +01:00
doc Add basic documentation: README, INSTALL, Architectural overview 2013-02-10 16:18:34 +01:00
import Add import scripts brmbar1 -> brmbar3 2012-10-17 21:12:43 +02:00
.gitignore Rewrite brmbar v3 in Python because Perl has lousy Qt bindings 2012-09-05 01:31:05 +02:00
alert.sh alert.sh: +x 2015-10-31 21:16:01 +01:00
brmbar-cli.py brmbar-cli undo: New feature 2015-12-13 16:36:50 +01:00
brmbar-gui-qt4.py Add missing collateral changes for Transfer 2015-12-13 16:10:03 +01:00
brmbar-tui.py brmbar-tui.py: Use brmbar.Database instead of psycopg2 directly 2012-11-25 16:30:01 +01:00
brmbar-web.py Old uncommited changes, restock from cli, "cleanup bounty" feature 2015-07-01 01:06:59 +02:00
COPYING brmbar3 COPYING: brmbar3 released under GPLv2+ 2012-10-19 00:52:00 +02:00
daily-summary.sh daily-summary.sh: Add granatove mate to the count 2015-01-02 19:35:00 +01:00
INSTALL.md Added ubuntu packages 2013-07-06 14:17:52 +02:00
README.md brmbar-web: New trivial read-only UI 2014-04-06 20:52:00 +02:00
SQL SQL: add column for disabling unused accounts 2015-01-06 17:41:16 +01:00
SQL.test Initial implementation of brmbar v3 - brmbar v1 emulator brmbar-cli.pl 2012-08-29 03:52:30 +02:00
TODO TODO: Remove done items, add description 2013-02-10 16:25:49 +01:00
uklid-refill.sh Old uncommited changes, restock from cli, "cleanup bounty" feature 2015-07-01 01:06:59 +02:00
uklid-watchdog.sh Old uncommited changes, restock from cli, "cleanup bounty" feature 2015-07-01 01:06:59 +02:00
USAGE.md USAGE.md: Select for listing inventory items by their worth 2014-06-06 20:39:58 +02:00

BrmBar v3

BrmBar is a management system for running a tiny hackerspace shop with self-service usage based on trust and support for user accounts and inventory tracking.

BrmBar offers a touchscreen-based user interface, identifies items and users by barcodes scanned by a barcode reader, should run on any decent Linux machine and stores its data in PostgreSQL database.

Features

  • Very simple user interface (using big touchscreen buttons and barcode reader) that should enable even non-technical users to do basic shopping with little to no training.
  • Users may have their accounts they can load with money by depositing larger sum of money in advance, then charging their account when buying stuff. Of course, paying direct for cash is also supported.
  • Inventory and cash accounts are tracked so that you can make sure there is no Club Mate mysteriously disappearing or if the amount of cash in the cash box is not less than expected by the system.
  • You can enter receipts for duct tapes and other necessities to be financed by cash surplus generated by brmbar.
  • Simple management operations (depositing and withdrawing money from user accounts, entering receipts, stocking in new inventory) can be also performed in the user interface even by non-technical users with basic training.
  • The database is based on the classical accounting paradigm. This means no information is needlessly lost, you could even make a GNUCash export and your accounting geeks will feel warm and fuzzy.
  • Multiple user interfaces available (and possible). The primary user interface is based on QtQuick (Qt4 QML QtDeclarative).

User Interfaces

These UIs are provided:

  • brmbar-gui-qt4: The default touchscreen-based UI. The Python side provides an adapter object whose methods can be executed by the QML code; ad-hoc directionary objects are used to exchange complex data like account information.
  • brmbar-tui: A trivial text-based "shell" UI that mimics a historic interface used in the Brmlab hackerspace in the past. It supports only selling items, querying item price and user account balance and depositing money for the user accounts.
  • brmbar-cli: A command-line interface intended for use in scripts and remote usage when fixing problems. It is also meant to provide advanced functionality like inventory revision that is too tedious to implement in the Qt4 GUI and only the brmbar admins are expected to do these tasks.
  • brmbar-web: A simple read-only web interface to the stock list.

TODO

  • The user interface needs some improvements, mainly regarding scrolling in large lists.
  • The brmbar-cli.py admin script for advanced/remote management operations is largely unfinished. In the meantime, you need to use SQL statements, sorry. Or finish it yourself. :-)
  • It is common to have two stashes of cash, one in a cash box in the shop, another in a vault (sometimes called "overflow") where extra cash is stored. The brmbar model supports this, but UI support needs to be added.
  • Bitcoin support, somehow...

Some more TODO items may be listed in the GitHub issue tracker; missing brmbar-gui-qt4 features are listed in the TODO file.

Other Resources

See the INSTALL file for setup instructions and USAGE file for basic usage instructions. The doc/architecture file describes the brmbar object model and briefly explains the brmbar Python package.