+In most cases buttons will now appear as Title Case, although this can now change to suit different languages as needed as it's not forced
+by design.
+
+### Logical Theme System Events to Register Routes
+
+This release I've added a couple of new events to the [logical theme system](https://github.com/BookStackApp/BookStack/blob/development/dev/docs/logical-theme-system.md)
+to allow easier registration of custom web routes/endpoints where desired. As an example of these:
+
+```php
+<?php
+
+use BookStack\Theming\ThemeEvents;
+use BookStack\Facades\Theme;
+use Illuminate\Routing\Router;
+
+// Register a custom "/counter" endpoint which increments each time accessed
+Theme::listen(ThemeEvents::ROUTES_REGISTER_WEB, function (Router $router) {
+
+ $router->get('/counter', function () {
+ $count = session()->get('counter', 0) + 1;
+ session()->put('counter', $count);
+ return "Count: {$count}";
+ });
+});
+
+// Register a custom "/counter-auth" endpoint which increments each time accessed
+// like above but only if the user is logged in (or public access is enabled).
+Theme::listen(ThemeEvents::ROUTES_REGISTER_WEB_AUTH, function (Router $router) {
+
+ $router->get('/counter-auth', function () {
+ $count = session()->get('secret-counter', 0) + 1;
+ session()->put('secret-counter', $count);
+ return "Count Authed: {$count}";
+ });
+});
+```
+
+It was possible to register such routes previously, but you had to register them in a very specific way
+using internally named middleware, in the right order, otherwise you'd have issues with session & user access.
+These new events are intended to make this much simpler.