diff --git a/docs/examples.html b/docs/examples.html
index dc3992c9..5f4e108d 100644
--- a/docs/examples.html
+++ b/docs/examples.html
@@ -90,8 +90,7 @@
Kolibri comes with many features. Every feature is tested and used in an application.
- Many features have additional, self-contained example pages that show how to use the feature and
- what benefits the feature yields.
+ Many features have additional, self-contained example pages that visualize the feature.
This page provides an overview over the example pages such that you can browse
@@ -188,7 +187,8 @@
+
+
+ Standard Library
+
+ Immutable: Pair, Tuple, Maybe, Either, Sequence, JINQ, JSON monad
+ along with many church-encoded lambda abstractions.
+
+
+ Observable, ObservableList, DataFlowVariable, Scheduler, Attribute, ModelWorld.
+
+
+ Utilities: array extensions, DOM handling, test facility (incl. async testing), logging, REST calls.
+
+
+
+ Patterns
+
+ Classical MVC, Projector Pattern
+
+
+
+
+
+
+
+
+
diff --git a/docs/index.html b/docs/index.html
index 6978dfa2..538e57fd 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -1,226 +1,188 @@
-
-
-
-
-
- Free Open Source
-
- Kolibri is under development at
- GitHub, which is
- also the place for any discussions and issues.
-
-
-
-
- Contributions
- Kolibri aims to be a sustainable, high-quality toolkit.
- Contributions are validated through usability testing
- and automated tests.
- Industry experts and academic advisers assess the code quality
- and the completeness of the documentation.
- Every contribution must have proven its worth in an application.
-
-
- - Andermatt, Brodwolf
-
- - code,
- git book
- - Häfliger, Misic
-
- - code,
- documentation.pdf
-
- - Christen, Robin
-
- - code,
- git book
- - Berchtold, Duss
-
- -
-
- documentation.pdf,
- info
- - Wild, Wyss
-
- -
- code,
- documentation
-
- - Altermatt, Schnidrig
-
- -
- code,
- documentation,
- showcase
-
- - Advisors and Experts
-
- - Prof. Dierk König, Fabian Affolter, Dr. Dieter Holz, Daniel Kröni, François Martin,
- Marco Sanfratello, Dirk Lemmermann, Gerrit Grunwald
-
-
-
-
- Live Test Cases
- Have a look at the live test case report.
-
- Showing the report actually runs the latest test cases live in your current browser window.
- The Kolibri test facility does not require any build steps or extra tooling.
-
-
-
- Examples
- Browse through many examples.
-
-
-
- Guided Tour
- Take the tour through a selection of examples in order to understand how
- Kolibri helps with developing web applications. They are arranged from simple to
- increasingly complex and introduce new concepts along the way.
-
- Create a simple form very
- efficiently with just one line of code.
-
- Enforce and test business rules in the UI
- to interactively manage working hours in a day.
-
- Put the daily work hours in a week overview
- and keep all the business rules in place by simply delegating to what we have done before.
- Show compositionality of controllers and projectors.
-
- Have some fun with multi-way editing in a
- master-detail view.
- It builds on what we already know and adds real interactive richness to our application.
-
-
-
- Installation without dependency
- Common wisdom has it that web development comes with a myriad of dependencies.
- Kolibri follows a different approach. We do not use any dependencies at all - neither
- at runtime nor at build-time. There actually is no build-time since we never need building.
-
- Likewise, a project that uses Kolibri should be able to follow the same
- approach and not even depend on Kolibri itself!
-
- We assume that you simply copy the Kolibri source code (everything under the
- src directory) into your own project. You become the owner of the copied code -
- just as if you copied it from stackoverflow.
-
- This copy includes the documentation, examples, the testing facility, and the test cases.
- It will likely contain more than you need for your production code but that does no harm.
- Kolibri is fully written as ES6 modules, which means that you can "treeshake" with any bundler
- to remove all unused parts from your own production bundle while still having the best
- developer experience while programming.
-
- For the die-hard "but I just want to have Kolibri as a single file" developers, there is an
- automatically generated
- production bundle
- that always reflects the
- latest version (see version). It contains the
- production code, type definitions, and documentation but neither the test cases nor the examples.
- This might be useful for quick experiments.
-
-
-
-
-
-
+
+
+
+
+ Features
+
+ Kolibri's typesafe standard library contains the functional and immutable:
+ Pair, Tuple, Maybe, Either, Choice, Sequence, JINQ, and JSON monad
+ along with many church-encoded lambda abstractions.
+
+
+ For interactive user interfaces we have:
+ Observable, ObservableList, DataFlowVariable, Scheduler, Attribute, and the ModelWorld.
+
+
+ Additional utilities care for: array extensions,
+ DOM handling, test facility (incl. async testing), logging, and REST calls.
+
+
+ Classic MVC and the Projector Pattern lead us
+ from simple to more-and-more advanced web clients as shown in the
+ examples. The UI becomes rich, reliable,
+ consistent and efficient to build and maintain.
+
+
+ Kolibri also puts forward best practices on how to organize code,
+ organize types, organize styles, develop to interfaces,
+ layout code, use JavaScript features wisely, ubiquitous testing, and helpful JsDoc.
+
+
+
+
+ Examples
+ Browse through many examples.
+
+
+
+
+ Guided Tour
+ Take the tour through a selection of examples in order to understand how
+ Kolibri helps with developing web applications. They are arranged from simple to
+ increasingly complex and introduce new concepts along the way.
+
+ Create a simple form very
+ efficiently with just one line of code.
+
+ Enforce and test business rules in the UI
+ to interactively manage working hours in a day.
+
+ Put the daily work hours in a week overview
+ and keep all the business rules in place by simply delegating to what we have done before.
+ Show compositionality of controllers and projectors.
+
+ Have some fun with multi-way editing in a
+ master-detail view.
+ It builds on what we already know and adds real interactive richness to our application.
+
+
+
+
+ Why is Kolibri the way it is?
+ Have a look at our philosophy.
+
+
+
+
+ Free Open Source
+
+ Kolibri is feely available on
+ GitHub, which is
+ also the place for any discussions and issues.
+
+
+ Please have a look at how to
+ install without dependencies.
+
+
+
+
+
+
+
+
+
+
+ Values
+
+ - Top Quality
+ - Kolibri is a sustainable, high-quality toolkit.
+ Contributions are validated through usability testing and automated tests.
+ Industry experts and academic advisers assess the code quality
+ and the completeness of the documentation.
+ Every contribution must have proven its worth in an application.
+
+ - No Dependencies
+ - Kolibri has no dependencies at all - neither
+ at runtime nor at build-time. Likewise, a project that uses Kolibri
+ should be able to follow the same
+ approach and not even depend on Kolibri itself!
+ See installation without dependency.
+
+ - Test Driven
+ -
+ Kolibri comes with its own testing facility.
+ Have a look at the live test case report.
+
+ - Typesafe
+ -
+ Kolibri shows how to develop with plain vanilla JavaScript in a typesafe manner.
+ This is possible with the help of JsDoc. Kolibri comes with many advanced
+ examples on how to use that type system: generics, union types, intersection types, etc.
+
+ - Free Open Source
+ -
+ There is no licence. Just pick and choose what you want to use. The code is yours.
+
+
+
+
+
+ Installation without dependency
+ Common wisdom has it that web development comes with a myriad of dependencies.
+ Kolibri follows a different approach. We do not use any dependencies at all - neither
+ at runtime nor at build-time. There actually is no build-time since we never need building.
+
+ Likewise, a project that uses Kolibri should be able to follow the same
+ approach and not even depend on Kolibri itself!
+
+ We assume that you simply copy the Kolibri source code (everything under the
+ src directory) into your own project. You become the owner of the copied code -
+ just as if you copied it from stackoverflow. (This has the nice side effect that
+ AI tools will pick up Kolibri as "your code" and suggest Kolibri-style completions.)
+
+ This copy includes the documentation, examples, the testing facility, and the test cases.
+ It will likely contain more than you need for your production code but that does no harm.
+ Kolibri is fully written as ES6 modules, which means that you can "treeshake" with any bundler
+ to remove all unused parts from your own production bundle while still having the best
+ developer experience while programming.
+
+ For the die-hard "but I just want to have Kolibri as a single file" developers, there is an
+ automatically generated
+ production
+ bundle
+ that always reflects the
+ latest version (see version). It contains the
+ production code, type definitions, and documentation but neither the test cases nor the examples.
+ This might be useful for quick experiments.
+
+
+
+
+ Contributions
+
+ Contributions are validated through usability testing
+ and automated tests.
+ Industry experts and academic advisers assess the code quality
+ and the completeness of the documentation.
+ Every contribution must have proven its worth in an application.
+
+
+ - Andermatt, Brodwolf
+
+ - Lambda calculus and start of the functional stdlib:
+ code,
+ git book
+
+ - Häfliger, Misic
+
+ - Styling, incl. logo, plus login/registration:
+ code,
+ documentation.pdf
+
+ - Christen, Robin
+
+ - MVC and collaborative web applications:
+ code,
+ git book
+
+ - Berchtold, Duss
+
+ - Facetted search:
+
+ documentation.pdf,
+ info
+
+
+ - Wild, Wyss
+
+ - Logging, sequences, and JINQ:
+ code,
+ documentation,
+
+ - Altermatt, Schnidrig
+
+ - Navigation:
+ code,
+ documentation,
+ showcase
+
+ - Advisors and Experts
+
+ - Prof. Dierk König, Fabian Affolter, Dr. Dieter Holz, Daniel Kröni, François Martin,
+ Marco Sanfratello, Dirk Lemmermann, Gerrit Grunwald
+
+
+
+
+
+
+