— Code — 5 min read
What is Misk
Why do we need a Misk-Web
What does Misk-Web need to do
... for operators and customers
... for developers
Service developers want UIs but don't want to deal trying to research and decide on the best stack for their team. They want a well documented, curated stack with code templates so they can quickly build UIs for their services.
Modular. Misk at Cash is moving from the current Java monorepo to a polyrepo where each cloud micro-service has it's own repo. Misk-Web should be able to do the same. Code from different repos should be able to stitch together at runtime without prior coordination or compile time knowledge. Thus, Misk-Web should implement a micro-frontends architecture.
<WebComponents/>to wrap components written in any framework (Vanilla JS, React, Angular, Ember).
Composable. Big advantage to Misk is Guice direct injection. Take full advantage of this to allow different front end experiences to live in the same service by changing the annotated multibound list of tabs being loaded for each specific front end experience.
N=1 should not be radically different than N=2 in the complexity of the project. This means that we didn't want Misk-Web to have a simple mode and an advanced mode that required a full rewrite once you moved past a few basic tasks. Misk-Web should make every effort to be approachable without compromising the power and potential of the framework to build anything that you could in an isolated similar stack project.
Misk-Web Report Card
Why did you choose Typescript, React, Redux, and BlueprintJS? (Focus on Why of the decision, not necessarily What – especially if there exists other talks that go into the topic or framework. Emphasize rubric of the decision for inclusion in the stack)
How are you using them? What have you built?
Micro-Frontends: How to maintain lots of tabs across many repos
@misk/tslint, apply them.
miskwebCLI tool to regenerate build files based on a minimal set of metadata in a miskTab.json file.