Switch branches/tags
Nothing to show
Clone or download
unknown test
Latest commit e40c8c0 Sep 5, 2013

This is the demo application used in my ServiceStack talk at Chicago Code Camp. A running version should be available at

Scenario: Think of it like a Starbucks. Orders are entered by a user (or taken by a cashier). A fulfiller (barista) starts processing/fulfilling the order. The user can watch the status of their order by watching a queue. Using ServiceStack I want to try to create 3 separate systems (Ordering/Fulfilling/Customer Queue) that only know about each via their API.


Additional softwares used:

  • MVC 4 - not doing much. Views pull data via AngularJS.
  • ServiceStack (hosted at /api)
  • SQLite - persistence for Orders/Fulfillments
  • AngularJS - handling all the View/UI stuff
  • Redis - Cache, handling Pub/Sub and holding data for Orders Queue
  • SignalR - realtime refreshing of View grid data

Ordering System Concept:

  • Any user can create an Order
  • Orders get written to the database and displayed in the View
  • Orders are not editable (currently)
  • When an Order is placed a 'NewOrder' message is published


Fulfillment System Concept:

  • A 'Fulfiller' must log in.
  • Fulfillments are created by 'listening' for 'NewOrder' message
  • Once logged in a Fulfiller can view Orders that have not been fulfilled
  • When a fulfillment is updated a 'UpdateFulfillment' message is published


Orders Queue Concept:

  • Shows all partial Order data (customer name, item, status) that have not been fulfilled



  • If Redis isn't running Visual Studio seems to crash