0.2.0
I am pleased to present a second release of this library!
We are moving slowly, but every step is quite important. It proves this "concept" is no longer just a concept. Let's take a closer look at the changes this release brings!
Features
- Multi-stage UI update on action (related issue #62). Awesome feature, proposed by @bketelsen that allows to push multiple UI updates during single action call. Useful thing to show current status/step of a long-running action. Documentation.
ssa:oncall.displaycontrol attribute (related issue #56). Changes display parameter during action call, at the end of an action the layout will be restored. Documentationssa:onloadtrigger attribute (related issue #63). Provides a way to trigger an action on page load. This may be useful for components' lazy loading. Documentationssa:poll+ssa:poll.intervaltrigger attributes (related issue #18). Provides a way to trigger an action periodically. Useful for components that have to be updated over time (f.e. charts, stats, etc.). Documentationssa:onintersecttrigger attribute (related issue #36). Provides a way to trigger an action on element intersection. Documentationssa:render.modecontrol attribute (related issue #70). Determines which mode to use for dynamic DOM updating. Currently, 2 modes are supported: "morphdom" and "replace". Documentationssa.morph.ignoreandssa.morph.ignore.thiscontrol attributes (related issue ##43). Ignore elements morphing (with or without children). Documentation is not ready yet- The possibility of using custom render method (related issue #42). It's an important step to eliminate obligatory using of
html/templateand give more control to developers. Documentation - Support ndjson (newline delimited json) output format for Insights feature (related issue #49). Documentation is not ready yet.
- Option for changing SSA endpoint (related issue #84). Documentation is not ready yet.
- Option for changing async error behavior (related issue #77). Documentation is not ready yet
Deprecated
Nothing in this release :)
But old deprecated functions from 0.1 are cleaned up.
Future plans
- Video tutorials and articles. It's not enough to have a documentation as far as it's not providing step-by-step usage guide, also some people better understand information with audio/video content.
- More attention to minor things, like UI Kit and starter project.
- Refactor rendering lifecycle architecture (related issue #93). Lifecycle is pretty similar to pipeline, so job execution system (https://github.com/kyoto-framework/scheduler) perfectly fits for this purpose.
- Functional way to define pages and components (related issue #94).
- Server side state (related issue #28).
- Support tinygo compiler (related issue #80). An important step on the road to Edge Workers.
- Cover project with tests (related issue #53).
Final words
I would like to mention and say thanks to this people:
- @RowdyHcs for active participation in project development
- @bketelsen for providing
ssa:pollpull request, minor improvements and idea of multi-stage UI update - @OpenSauce for detailed documentation review for grammar mistakes
- @inthepanchine for ndjson insights output
- ... and other people can be found here