1 #+setupfile: ../clean.theme
2 #+title: demo-old-readme
4 The backend services are written in Rust and controlled by a simple
5 messaging protocol. Services provide common runtime capabilities known
6 as the
/service protocol/ but are specialized on a unique
/service 7 type/ which may in turn register their own
/custom protocols/ (via
10 Services are capable of dispatching data directly to clients, or
11 storing data in the
/database/ (sqlite, postgres, mysql).
13 The frontend clients are pre-dominantly written in Common Lisp and
14 come in many shapes and sizes. There is a cli-client, web-client
15 (CLOG), docker-client (archlinux, stumpwm, McCLIM), and native-client
16 which also compiles to WASM (slint-rs).
20 - *install dependencies* 24 - *make executables* \\ 25 Simply run
=make build=. Read the
~makefile~ and change the options
27 - MODE :: Mode (debug, release)
28 - LISP :: Lisp (sbcl, cmucl, ccl)
29 - CFG :: Config (default.cfg)
35 Configs can be specified in JSON, TOML, RON, or of course SEXP. See
36 =default.cfg= for an example.
38 The high-level user interface is presented as a multi-modal GUI
39 application which adapts to the specific application
/instances/ 42 This backend retrieves weather data using the NWS API.
44 The 'Stocks' backend features a stock ticker with real-time analysis
47 This is a benchmark backend for testing the capabilities of our
48 demo. It spins up some mock services and allows fine-grained control
52 - consider tree-sitter parsing layout, use as a guide for developing a
53 single syntax which expands to Rust or C.
59 *** TODO rs-macroexpand 65 *** TODO c-macroexpand 71 *** TODO slint-macroexpand 77 *** TODO html (using who) 79 create a basic static page in CL which will be used to host Slint UIs
80 and other WASM doo-dads in a browser.
82 using clingon, decide on generic options and write it up
84 work on doc generation -- Rust and CL should be accounted for.
86 We have none! need to make it more comfy - set up testing in all Rust
87 crates and for the lisp systems.