Docs BETA
/

0. Introduction

Start here to learn how to build apps with vendOS


Welcome! We're excited that you've decided to learn vendOS. This tutorial will guide you through building your first app with the FieldCommand API. Throughout the tutorial, you'll learn how to connect via WebSockets to the API and do a simple random vend.

The tutorial assumes that you're comfortable with JavaScript/ES6.

What is FieldCommand?

FieldCommand is the local server running on our PC within the machine. It is composed of 3 parts, FieldCommand API, FieldCommand View, and FieldCommand UI.

FieldCommand API

The API is what you will be using to connect to the hardware and our servers. You will primarily be using it to issue vends and save data. The connection is established via local websocket and we believe its got quite a shallow learning curve before you start seeing the machine in motion!

FieldCommand View

This is where you app gets shown, all thats required is an index.html in the directory you upload to get going. You can use the entirety of the screen (1080 x 1920px Portrait) apart from the bottom left 200 x 200px which is used to access FieldCommand UI. The browser your code is running in is Chromium (v) and your files are downloaded and then served from a simple local http server allowing the app to keep running regardless of internet connection.

FieldCommand UI

FieldCommand UI is accessed by clicking the bottom left hand 200 x 200px. once this is opened you enter a passcode (default: 123456) and have access to the UI. In here you can test the vending of channels and set up low stock notifications.

Download examples

If you would like to skip past the tutorial and just grab an example repo with every action you can do on the API then just clone this and have a dig through the internal directories. https://github.com/apollographql/fullstack-tutorial

Open up your terminal and clone the repo

git clone https://github.com/apollographql/fullstack-tutorial/

There are multiple directories contained within the repo, it will be updated whenever we have a new endpoint!

Where can I get help?

We know that learning a new technology can sometimes be overwhelming, and it's totally normal to get stuck! If that happens, we recommend emailing [email protected] for help.

If something in the tutorial seems confusing, contains an error, or you would just like a new feature, we'd love to help! Just send and email to [email protected] and we will be sure to jump on it at the next opportunity.