sc-playground

command module
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 12, 2022 License: MIT Imports: 1 Imported by: 0

README

Smart Core Playground

Tools for playing with Smart Core.

This repository creates a virtual smart building you can connect to and write your client applications against.

The recommended way to run the playground is to download a binary for your system from the releases page. When run it will start a Smart Core server that you can interact with from your client code, it also hosts a web UI to get you going even quicker.

The Smart Core server will be hosted on port 23557 and secured using a self signed cert. The playground ui will be hosted at https://localhost:8443.

Use the program argument --help for configuration options (ssl certs, ports, etc).

Developers

Simple build process
# build the playground ui, dist/embed/ will be embedded in the go executable
cd ui/playground
yarn install
yarn build
cd ../.. # back to the root folder

# build the go app, outputs sc-playground.exe (or similar)
go build .
Releasing

Tag and push a commit with a v1.2.3 style version to trigger the release process. Versions with a v1.2.3-beta suffix will produce prerelease versions.

Documentation

Overview

Playground runs a virtual Smart Core building.

Directories

Path Synopsis
cmd
electric-client
Package main is a simple program that connects to a local playground instance (on the default insecure port) and logs changes to demand and mode for a single electric device.
Package main is a simple program that connects to a local playground instance (on the default insecure port) and logs changes to demand and mode for a single electric device.
internal
simulated
Package simulated implements simulation logic for the Smart Core playground.
Package simulated implements simulation logic for the Smart Core playground.
simulated/dynamic
Package dynamic implements values that change themselves over time in a specified way.
Package dynamic implements values that change themselves over time in a specified way.
th
util/accumulator
Package accumulator implements helper types for iterative computations.
Package accumulator implements helper types for iterative computations.
util/broadcast
Package broadcast implements concurrency utilities that broadcast to many receivers at once, unlike normal channels where only a single receiver gets each value.
Package broadcast implements concurrency utilities that broadcast to many receivers at once, unlike normal channels where only a single receiver gets each value.
pkg
run
sim
sim/input
Package input provides tools for collecting and processing user input, typically API calls.
Package input provides tools for collecting and processing user input, typically API calls.
timeline
Package timeline defines the basic types of a timeline.
Package timeline defines the basic types of a timeline.
timeline/skiplisttl
Package skiplisttl provides a skip list based implementation of timeline.TL.
Package skiplisttl provides a skip list based implementation of timeline.TL.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL