/bce.design

minimal magic, minimal tooling, essential dependencies, high productivity, no transpilations and no migrations. The Web Components starter ships with integrated lit-html, redux-toolkit and vaadin router components.

Primary LanguageJavaScriptMIT LicenseMIT

bce.design

minimal tooling, essential dependencies, high productivity, no migrations, web component starter for non-trivial web applications

Boundary Control Entity quickstarter -> with web components

run

To launch the application:

  1. Install browsersync
  2. git clone https://github.com/AdamBien/bce.design
  3. cd app
  4. Perform: browser-sync src -f src -b "google chrome" --no-notify

BCE overview

IDE

  1. Visual Studio Code
  2. Setup: JS imports
  3. lit-html plugin for syntax highlighting inside html templates
  4. redux devtools chrome extension

update dependencies

Checkout libs

external ingredients

  1. lit-html
  2. redux toolkit
  3. vaadin router (suggestion / optional)
  4. rollup (for updates / optional)

what is BCE?

Boundary Control Entity (BCE) pattern is used to organize elements according to their responsibilities: https://en.wikipedia.org/wiki/Entity-control-boundary.

Why it is needed? BCE was published in 1992 and since then described in various books and articles. Also: the boundary, control, entity icons are available in all modelling, drawing and designing tools.

The best of all: with BCE we don't have to discuss the naming anymore and therefore completely ignore the Parkinson's law of triviality :-).

unidirectional data flow

unidirectional data flow

vaadin router

vaadin router intro

static hosting on Amazon S3

static web hosting on Amazon S3 intro

resources

https://github.com/adambien/mockend is useful as a mock backend with throttling functionality.

Mockend can slow down responses, what simplifies the testing of asynchronous view updates. Fetch-requests in the control layer can be delayed for test purposes.