Skip to content

phytec/demo-slint

Repository files navigation

Slint Frontend Showcase for an AI-powered Coffee Machine

Embedded frontend showcase made with slint for controlling an AI-powered coffee machine, which detects coffee cups and selects a product based on the type of cup. The frontend itself communicates with the backend (the coffee machine) via a websocket connection. A mock backend is included in this repository.

Prerequisites

Slint uses Rust, so Rust has to be installed. For development (mock websocket/REST Server) NodeJS is needed.

Build locally

  • Precondition: Websocket and REST Server must run, otherwise the application will fail.

    You can also start the Mock websocket and REST Server:

    npm install --include dev
    cd websocketserver
    node manual_coreservice_mock.js
    
  • Build and run

    cargo run
    

Adapt websocket endpoints

The application expects the websocket server endpoint to be reachable on the same device at ws:://localhost:3000/frontend.

To use a different websocket server endpoint, you can place a config.yaml file in /usr/share/coffee-app, with the custom address set in the parameter websocket_address. E.g.:

echo 'websocket_address: ws://192.168.3.10:3000/frontend' >| /usr/share/coffee-app/config.yaml

Licensing

The code in this repository is licensed under MIT, see LICENSE, except for the fonts in ui/assets/fonts/ which are licensed under OFL.

Note that this project uses slint, which is licensed under GPLv3. If this software is distributed together with that library, then it must be distributed under the conditions of GPL. If this is not an option, then a different license can be purchased for slint.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors