Future ideas and open points

The following is an incomplete collection of feature ideas and problems.

Open points (help appreciated):

  • Finalize the deployment with SSL certificates
  • Setup Nginx proxy docker image / docker compose
  • Use Kamal as deployment flow instead of manual setup
  • Setup a local DNS server for easy access :D

Ideas:

  • Enable modifiable orders
    • Maybe simpler: Keep Create/Delete functionality but add functionality to copy order to cart to quickly clone a order.
  • Add menu-articles
    • These articles consist of multiple articels which are listed separately on the order
  • Splitting articles of an order over multiple receipts
    • Useful if an order must be served from two different kitchen stations.
  • Add user authentication
    • This would allow to have multiple selling stations (i.e., multiple printers and pending order views) and could secure the article management.
  • Make printer selection configurable
    • Currently the selection of the printer is hardcoded to a specific name (see app/controllers/application_controller.rb). This should be configurable.
  • Implement proper printer backend
    • Currently the "development-only" async worker backend is used to dispatch printer jobs. This backend is also not thread safe.
  • Stress-test the database
    • It ran well for a whole day processing more than 600 orders in total.
  • Expand the order summary with time based data (a graph showing at which time of day how many, e.g., fries were sold)
  • Add payment options to directly by with card / Twint
  • Alternative pending screen
    • Pending orders are displayed as matrix. Each row is an order and each column represents an article.
  • Your idea