]> BookStack Code Mirror - website/commitdiff
Finished off v0.26 post and made some theme tweaks
authorDan Brown <redacted>
Mon, 6 May 2019 17:57:09 +0000 (18:57 +0100)
committerDan Brown <redacted>
Mon, 6 May 2019 17:57:09 +0000 (18:57 +0100)
18 files changed:
content/blog/beta-release-v0-26-0.md
content/docs/admin/updates.md
static/images/2019/05/admin_page_cleanup.png [new file with mode: 0644]
static/images/2019/05/book_sort_buttons.png [new file with mode: 0644]
static/images/2019/05/breadcrumb_navigation.png [new file with mode: 0644]
static/images/2019/05/design_update_mobile.png [new file with mode: 0644]
static/images/2019/05/design_update_mobile_editing.png [new file with mode: 0644]
static/images/2019/05/image_selection_changes.png [new file with mode: 0644]
static/images/2019/05/listing_sort.png [new file with mode: 0644]
static/images/2019/05/permission_toggle_all.png [new file with mode: 0644]
static/images/2019/05/profile_page_changes.png [new file with mode: 0644]
static/images/2019/05/search_page_changes.png [new file with mode: 0644]
static/images/2019/05/shelf_create_book.png [new file with mode: 0644]
static/images/2019/05/shelves_list.png [new file with mode: 0644]
static/images/2019/05/smart_breadcrumbs.png [new file with mode: 0644]
static/images/2019/05/toggle_details.png [new file with mode: 0644]
themes/bookstack/layouts/blog/single.html
themes/bookstack/sass/_blog.scss

index d637c92812197490bf23a1a009e244ac9f3e12cd..d8b06ae196dc25ed1c3a8a095410c96d832248c5 100644 (file)
@@ -2,22 +2,14 @@
 categories = ["Releases"]
 tags = ["Releases"]
 title = "Beta Release v0.26.0"
-date = 2019-05-06T10:00:00Z
+date = 2019-05-06T17:00:00Z
 author = "Dan Brown"
 image = "/images/blog-cover-images/paint-andrian-valeanu.jpg"
-description = "A design update comes to BookStack which includes a whole bunch of user experience improvements and includes much better mobile usability"
+description = "A design update comes to BookStack which includes a whole bunch of user experience improvements and much better mobile usability"
 slug = "beta-release-v0-26-0"
 draft = false
 +++
 
-**TODO**
-
-- Update other docs if needed.
-- Update homepage screenshots.
-- Finish below post.
-
---
-
 After a long development cycle BookStack v0.26 is finally here, bringing a refreshed design that includes new
 functionality while providing a much better mobile experience.
 
@@ -37,25 +29,134 @@ Since many interfaces and lines of text have been updated, It may take a little
 
 **Images**
 
-Due to changes how images are handled, as detailed below, some types of images may become inaccessible. Old logo images will be deleted when changed. Unused Book/Shelf cover images & User profile images will be become inaccessible after the update so you may want to delete them before upgrade.
+Due to changes how images are handled, as detailed below, some types of images may become inaccessible. Old logo images will be deleted upon change. Unused Book & Shelf cover images, in addition to user profile images, will be become inaccessible after the update so you may want to delete them before upgrading.
+
+**Security**
+
+On previous versions of BookStack it was possible for users to insert JavaScript via the Markdown editor using *"on\*"* html event attributes. These will now be removed on page render unless you have set *ALLOW_CONTENT_SCRIPTS=true*. If untrusted users have access to your BookStack instance you may want to scan for " on" in the html column of the pages table to identify any malicious intent. Thanks to [@Xiphoseer](https://github.com/Xiphoseer) for reporting.
+
+### Design Update
+
+Design changes have been applied to every single view in BookStack. The aims of this design update were as follows:
+
+- Improve design consistency and feature usage throughout application.
+- Improve the mobile experience.
+- Provide a more modern, less "stock", feel.
+- Clean-up the current colour-scheme for easier future customizability.
+- Lessen the usage of glaring book/chapter & page colours.
+- Look to add UI efficiency tweaks.
+
+I'm happy to say I think we've managed to meet all those initial aims.
+Here's a dig into many of the changes:
+
+#### Mobile Experience
+
+The core mobile experience has been a main focus for this update.
+Previously BookStack would kind of respond to work on smaller devices but a lot of vertical space would be used and the interface would look very busy.
+
+*v0.25 on the left, v0.26 on the right.*
+
+<img src="/images/2019/05/design_update_mobile.png" class="no-border" alt="Design update mobile changes">
+
+The header has now been updated to properly collapse down on mobile to reduce used vertical space.
+The old side drawer, containing extra details of the current view, has instead changed to a tabbed interface to save on precious horizontal space.
+
+The editing experience has been reworked to ensure its usable on mobile:
+
+*v0.25 on the left, v0.26 on the right.*
+
+<img src="/images/2019/05/design_update_mobile_editing.png" class="no-border" alt="Design update mobile editing changes">
+
+Unfortunately, there are still issues with being able to edit page content on iOS, which we will continue to look into, but editing now appears to be fully functional on Android devices.
+
+#### Shelf Improvements
+
+This design update provided an opportunity to look at how shelves could become more unique & functional.
+To start with, the shelves list view has been overhauled:
+
+![Shelves listing](/images/2019/05/shelves_list.png)
+
+For each shelf shown, contained books are listed below in columns, somewhat imitating real-life bookshelves, allowing quick visibility of their contents.
+
+To speed up the creation flow, A "New Book" button is now available when viewing a shelf to accelerate the creation process:
+
+![Create book from shelf](/images/2019/05/shelf_create_book.png)
+
+This reduces the number of steps needed to create a new book within a shelf from about 6 steps to just 2.
+Thanks to [@cw1998](https://github.com/BookStackApp/BookStack/pull/1366) for adding this feature.
+
+For ease of navigation, breadcrumbs will now display the current shelf you navigated through:
+
+![Smarter breadcrumbs with shelves](/images/2019/05/smart_breadcrumbs.png)
+
+If BookStack thinks you've navigated via a shelf, the leftmost breadcrumb will show as the shelf overview page otherwise it will default back to the book overview page.
+
+#### Navigation Enhancements
+
+Some navigational enhancements have been applied to allow more efficient traversal of your content in BookStack.
+For the books and shelves list pages, it's now possible to sort the lists by name, created date or updated date:
+
+![Books and shelves list sorting](/images/2019/05/listing_sort.png)
+
+You can change the ordering of the sort to be ascending or descending by clicking the arrow that sits beside the sort drop-down.
+
+In addition to the inclusion of shelves, as mentioned above, breadcrumbs have been powered up with more navigation abilities.
+You can now click the arrows between the crumbs to jump to other items at that level of the hierarchy:
+
+![Breadcrumb Navigation](/images/2019/05/breadcrumb_navigation.png)
+
+You can even search within the drop-downs to quickly find items at each level.
+This addition provides an easy way to quickly jump between higher levels of the hierarchy without even needing to leave the current page.
+
+#### Improved Admin Experience
+
+On the administration side of things, all options and views have received a much needed clean-up.
+Settings are now much better organised and spaced out. Additional hint text has been added where needed to provide extra information & context for various options.
+
+![Admin Page Cleanup](/images/2019/05/admin_page_cleanup.png)
+
+Handling permissions could often be laborious task due to the amount of checkboxes you may have to toggle.
+On such pages, "Toggle All" links have been added for super-quick permission checking:
+
+![Permission Toggles](/images/2019/05/permission_toggle_all.png)
+
+#### Image Selection Changes
+
+For simplicity, and enhanced security, the process for selecting some types of images has changed.
+Profile images, app logo images and book/shelf cover images are now directly selected instead of opening in the image manager.
+
+![Direct Image Selection](/images/2019/05/image_selection_changes.png)
+
+
+#### Book Sort Helpers
+
+To make it easier to sort a book, helpful buttons have been added to perform common sorting operations.
+You can sort by name in addition to created or updated date.
+There are also buttons to move chapters to the start or end of the book.
+For the name & date sort operations, you can press the button a second time to run the sort in the opposite direction.
+
+![Book Sort Helpers](/images/2019/05/book_sort_buttons.png)
+
+#### Profile Page Enhancements
+
+The user profile page has received a few tweaks.
+User-created shelves now show alongside the other content types.
+Links have been added to the "Recently Created" headings for quick searching of content created by the shown user.
+
+![Profile Page Changes](/images/2019/05/profile_page_changes.png)
+
+#### Toggle Details Button
+
+The "Toggle Details" button, shown on the homepage, will now remember its last state so you don't have to click it every time if you prefer details to be visible.
 
-### Design things to cover
+![Toggle Details](/images/2019/05/toggle_details.png)
 
-- Better mobile experience
-- Image selection changes
-- Toggle details state saving
-- Shelves & Books sorting
-- Shelf list layout (With books)
-- Shelves in breadcrumbs
-- Create book from shelf. [Credit cw1998]
-- Breadcrumb navigation dropdowns
-- Book sorting helpers
-- Organised settings pages
-- Permission toggles
-- Cleaned profile pages?
+#### Search Page
 
-### Other Features
+The result list on the search page is now a little more compact for efficiency.
+Pages & chapters in the results will now show their parent book, and chapter if applicable, to provide additional context as to where that item sits within your content structure.
 
+![Search Page Crumb](/images/2019/05/search_page_changes.png)
 
 ### Full List of Changes
 
@@ -68,6 +169,7 @@ Due to changes how images are handled, as detailed below, some types of images m
 * Updated page content script escaping logic to strip inline JS event attributes. Thanks to [@Xiphoseer](https://github.com/Xiphoseer) for reporting.
 * Updated revision restore to require confirmation and changed the method from GET so it's less likely to be accidentally triggered. ([#1321](https://github.com/BookStackApp/BookStack/issues/1321))
 * Updated shortcut used for markdown drawing manager to be cross-platform. ([#1228](https://github.com/BookStackApp/BookStack/issues/1228))
+* Updated Swedish translations. Thanks to [@Hambern](https://github.com/BookStackApp/BookStack/pull/1417). ([#1417](https://github.com/BookStackApp/BookStack/pull/1417))
 * Fixed issue where duplicate ID's could sometimes break pages. ([#1393](https://github.com/BookStackApp/BookStack/issues/1393))
 * Fixed issue where user role assignments were not remembered, for roles with a dot in the name, on validation failure. Thanks to [@cw1998](https://github.com/BookStackApp/BookStack/pull/1392). ([#1392](https://github.com/BookStackApp/BookStack/pull/1392), [#1325](https://github.com/BookStackApp/BookStack/issues/1325))
 * Fixed issue where the port would be ignored if a full LDAP server URI was used. ([#1386](https://github.com/BookStackApp/BookStack/pull/1386), [#1278](https://github.com/BookStackApp/BookStack/pull/1278))
@@ -82,16 +184,16 @@ Since this release includes a lot of design changes I expect there to be a good
 I may start having an experimental dig into a new way to organise the JavaScript code BookStack uses.
 BookStack currently bundles pretty much all the JavaScript into single file.
 With the dropping of IE, I'd like to look at going a bit old-school, with most of the JS code being directly on the page and only have a few core global libraries bundled up.
-This would bring the benefit of allowing users to directly modify parts of the JS without having to install tools or re-bundle the code.
+This would bring the benefit of allowing admins & developers to directly modify parts of the JS without having to install tools or re-bundle the code.
 
 **REST API Authentication**
 
-Once the current redesign has settled focus will be on the next roadmap item, The REST API.
-In preparation for this, I've opened up a proposal for the primary authentication method to implement for this API [here on GitHub](https://github.com/BookStackApp/BookStack/issues/1414) so any issues or recommendations can be discussed ahead of time.
+Once the current redesign has settled, focus will be on the next roadmap item: The REST API.
+In preparation for this, I've opened up a proposal for the primary authentication method to implement which can be found [here on GitHub](https://github.com/BookStackApp/BookStack/issues/1414). This is so any issues or recommendations can be discussed ahead of time since I don't want to rush the choice of authentication.
 
 **Templating**
 
-For the next release I thought it'd be good to look at a highly requested documentation-focused request; Templating. I've put a proposal together [in this comment on GitHub](https://github.com/BookStackApp/BookStack/issues/129#issuecomment-460412403).
+For the next release I thought it'd be good to look at a highly requested documentation-focused request: Templating. I've put a proposal together [in this comment on GitHub](https://github.com/BookStackApp/BookStack/issues/129#issuecomment-460412403).
 It's a fairly simplistic implementation idea but should provide a benefit to users without having that much extra code/functionality to manage.
 Would be good to get an idea if the proposal would meet people's needs.
 
index acfb5828b0f56b9e44403357fe339ff8b9a52bc2..fad536e54d6e484d894b57c18b9eb9358145b3be 100644 (file)
@@ -31,6 +31,16 @@ Check the below list for the version you are updating to for any additional inst
 
 ## Version Specific Instructions
 
+#### Updating to v0.26 or higher
+
+**Internet Explorer Support** - IE11 Support has now been dropped. We *may* support any critical issues for view-only scenarios otherwise please use a modern browser.
+
+**Translations** - Since many interfaces and lines of text have been updated, It may take a little while for some translations to catch-up. Expect to see more English text than usual if you're using a non-English language option.
+
+**Images** - Due to changes how images are handled, as detailed below, some types of images may become inaccessible. Old logo images will be deleted when changed. Unused Book/Shelf cover images & User profile images will be become inaccessible after the update so you may want to delete them before upgrade.
+
+**Security** - On previous versions of BookStack it was possible for users to insert JavaScript via the Markdown editor using `on*` html attributes. These will now be removed on page render unless you have set `ALLOW_CONTENT_SCRIPTS=true`. If untrusted users has access to your BookStack you may want to scan for `<<space_char>>on` in the HTML column of the pages table to identify any malicious intent.
+
 #### Updating to v0.25.3 or higher
 
 **Security** - On previous versions of BookStack it was possible to upload PHP files via the image upload endpoints. If you have a BookStack instance where untrusted users could upload image files, and you were using the default file storage option, It would have been possible for the user to access anything that the PHP process could. This would likely include, at minimum, any credentials stored in the `.env` file.
@@ -45,7 +55,7 @@ Check the below list for the version you are updating to for any additional inst
 
 **Requirements Change** - Minimum required version of PHP has changed from 7.0.0 to 7.0.5.
 
-**Configuration Change** - The .env option `GRAVATAR_URL=false` has been replaced by `AVATAR_URL=false`. 
+**Configuration Change** - The .env option `GRAVATAR_URL=false` has been replaced by `AVATAR_URL=false`.
 
 
 #### Updating to v0.24 or higher
diff --git a/static/images/2019/05/admin_page_cleanup.png b/static/images/2019/05/admin_page_cleanup.png
new file mode 100644 (file)
index 0000000..db30cbd
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7b3b3dbffe7b37d00af3c5bb1ceee0a332d8a5da3611e5e5880d94c8de1adffc
+size 12016
diff --git a/static/images/2019/05/book_sort_buttons.png b/static/images/2019/05/book_sort_buttons.png
new file mode 100644 (file)
index 0000000..b716742
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8529bc8b929704234c8a2cbef86149efed75ced150170481d1a633415d18c72c
+size 9821
diff --git a/static/images/2019/05/breadcrumb_navigation.png b/static/images/2019/05/breadcrumb_navigation.png
new file mode 100644 (file)
index 0000000..9de247a
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:566f7ce2af24170f406b8f979fb73c7c37ec8cb3ef50f1743a1c2cda516d0b8b
+size 16487
diff --git a/static/images/2019/05/design_update_mobile.png b/static/images/2019/05/design_update_mobile.png
new file mode 100644 (file)
index 0000000..dda43cf
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:07653634fe7b86577f73ab3094932d5ec307161f5751c3712010554193807bbe
+size 111064
diff --git a/static/images/2019/05/design_update_mobile_editing.png b/static/images/2019/05/design_update_mobile_editing.png
new file mode 100644 (file)
index 0000000..029d636
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:46bc99619294150b70f4710435cb600be9b551e32bf19dde10258331f0ce03f7
+size 104344
diff --git a/static/images/2019/05/image_selection_changes.png b/static/images/2019/05/image_selection_changes.png
new file mode 100644 (file)
index 0000000..c33289c
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:31560ccc8d15e4066668f57d62fbdaf130720ada6bc48a5263fa1ab59b0757e2
+size 8588
diff --git a/static/images/2019/05/listing_sort.png b/static/images/2019/05/listing_sort.png
new file mode 100644 (file)
index 0000000..ae7c012
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4c8cc7be6d991c057f40a8a5d3803cc2ddff57cbb3b96f7d33e55bf68482e829
+size 3564
diff --git a/static/images/2019/05/permission_toggle_all.png b/static/images/2019/05/permission_toggle_all.png
new file mode 100644 (file)
index 0000000..7668b1a
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6a2bf8fd91d11f9f08feac0d42a09a0d84e6bc5cb1468db92054382eb4d36fd4
+size 14535
diff --git a/static/images/2019/05/profile_page_changes.png b/static/images/2019/05/profile_page_changes.png
new file mode 100644 (file)
index 0000000..4f0b8e9
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:57adf539fd660a3558585f4ff46af3d8c7d060c69051ce78ff844f5e4f157a2b
+size 64104
diff --git a/static/images/2019/05/search_page_changes.png b/static/images/2019/05/search_page_changes.png
new file mode 100644 (file)
index 0000000..aa56270
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a7b879114d9d12eb8f8f397e00c755d47e438a18b997a14d1759e9412576ab6d
+size 67690
diff --git a/static/images/2019/05/shelf_create_book.png b/static/images/2019/05/shelf_create_book.png
new file mode 100644 (file)
index 0000000..40580a3
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:04e8e04647597c8b5ccdb25b1b2123bfac3a00bd50364ccc624f5f7989a7a76e
+size 17846
diff --git a/static/images/2019/05/shelves_list.png b/static/images/2019/05/shelves_list.png
new file mode 100644 (file)
index 0000000..55cb9af
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c263a13889d5202f3a4e9ddf43c846a02abaca3bbb1090c5d3a9bd5554cc981c
+size 41998
diff --git a/static/images/2019/05/smart_breadcrumbs.png b/static/images/2019/05/smart_breadcrumbs.png
new file mode 100644 (file)
index 0000000..f43fd6f
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f7e9d6ca33da01fa2b40db22922f9885c2d4d4eccbc6efbcac1deb3097b0dba3
+size 7291
diff --git a/static/images/2019/05/toggle_details.png b/static/images/2019/05/toggle_details.png
new file mode 100644 (file)
index 0000000..6c2aaf1
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e85d51c7338480e2cdf04c8784f3d1a1525314132fcefb4fbe2cabf3e40ee377
+size 12083
index 8d605de451df9ac1d281d42aa4d9d6dfcc2dd1c6..720aedba2386ded34822ca57e35c7b54ce0630f5 100644 (file)
@@ -17,7 +17,7 @@
           {{$author := index .Site.Data.authors (or .Params.author .Site.Params.author)}}
           {{$authorname := or $author.name .Site.Params.author }}
           {{$authorthumbnail := or $author.thumbnail .Site.Params.author }}
-          <img class="post-avatar" width="32" src="{{$authorthumbnail}}" alt="{{$authorname}}"> {{$authorname}} posted on the {{ .Date.Format "2" }}{{ if in (slice 1 21 31) .Date.Day}}st{{ else if in (slice 2 22) .Date.Day}}nd{{ else if in (slice 3 23) .Date.Day}}rd{{ else }}th{{ end }} of {{ .Date.Format "January 2006" }}
+          <img class="post-avatar no-border" width="32" src="{{$authorthumbnail}}" alt="{{$authorname}}"> {{$authorname}} posted on the {{ .Date.Format "2" }}{{ if in (slice 1 21 31) .Date.Day}}st{{ else if in (slice 2 22) .Date.Day}}nd{{ else if in (slice 3 23) .Date.Day}}rd{{ else }}th{{ end }} of {{ .Date.Format "January 2006" }}
       </p>
 
       {{.Content}}
index 76be3a207b9bb87e135f21446bf83540c1bb60ee..ac23d4747225bea2be37068196158ee31a76302b 100644 (file)
@@ -14,9 +14,9 @@
        border: 0;
 }
 
-.post-content img {
+.post-content img:not(.no-border) {
        border-radius: 3px;
-       border: 1px solid $primary;
+       border: 1px solid #DDD;
 }
 
 .post-content video {