BookStack

BookStack
Original author(s)Dan Brown
Developer(s)Dan Brown
Initial release12 July 2015; 9 years ago (2015-07-12)
Stable release
24.10[1] Edit this on Wikidata / 2024-10-09; 23 days ago
Repository
Written inPHP
Operating systemCross-platform
PlatformCross-platform
Available in43[2] languages
TypeWiki software
LicenseMIT License
Websitewww.bookstackapp.com Edit this at Wikidata

BookStack is a free and open-source wiki software aimed for a simple, self-hosted, and easy-to-use platform. Based on Laravel, a PHP framework, BookStack is released under the MIT License. It uses the ideas of books to organise pages and store information.[3] BookStack is multilingual and available in over thirty languages.[2]

History

[edit]

BookStack’s first commit was published on 12 July 2015 by Dan Brown, an English web developer.[4] Originally named ‘Oxbow’, the project was renamed to BookStack after only 11 days. The initial proper layout was inspired by DokuWiki, and in October of the same year, the current layout of BookStack was settled.[5] The overall design was significantly optimised with the release of v0.26 on 6 May 2019, especially on the mobile experience.[6]

After over five years of development by Brown and the community members, it ended the beta stage with the release of v21.04 on 9 April 2021.[7] BookStack has become the most popular wiki software written in PHP on GitHub, as of June 2021.[8]

Features

[edit]
BookStack is compatible with mobile devices

Installation and configuration

[edit]

PHP, MySQL or MariaDB, Git (for updates), and Composer are required for the installation of BookStack.[9] It also can be installed via a Docker container.[10] The name, logo and registration options can be changed, and whether the whole system is publicly viewable or not can be also changed.[11]

Content levels

[edit]

BookStack, as the name suggests, is based of the ideas of a normal stack of books. The categorisation of BookStack is limited to four levels— shelves, books, chapters, and pages. Books and pages are required for storing contents, while chapters are optional for better organisation of pages. Shelves can contain multiple books, and a single book could be placed on multiple shelves.[3]

Organisation

[edit]

On a BookStack website, chapters and pages can be sorted within a book. A chapter can be moved to another book, and a page can be moved to either another book or another chapter.[12] Page revisions and image management are available, as well as a full role and permission system that allows to lock down contents and actions.[11]

Editing and searching

[edit]

BookStack provides WYSIWYG and Markdown editors, and the Markdown editor also provides a live preview. Books, chapters and pages are fully searchable, and it is available to link directly to any paragraph.[11]

Integrated authentication

[edit]

The email/password login social providers such as GitHub, Google, Slack, AzureAD and more can be used. Okta and LDAP options are available for enterprise environments.[11]

Extensibility

[edit]

BookStack does not have a traditional "Plugin" system, but it does offer a few methods of extension. BookStack's customization settings provide an input to add custom HTML content to the head of the page, which can then utilize "Editor Events" to customize the page editors. A REST API is built-in, covering CRUD actions for the core content types within BookStack. A "Visual Theme System" can be used to customize views, translation text and icons within the platform. A "Logical Theme System" allows back-end PHP-based logical customization without needing to alter core application files.[13]

See also

[edit]

References

[edit]
  1. ^ "Release 24.10". 9 October 2024. Retrieved 21 October 2024.
  2. ^ a b "BookStack/resources/lang/". GitHub. BookStack. Retrieved 1 December 2022.
  3. ^ a b "Content Overview". BookStack. 23 September 2018. Retrieved 9 June 2021.
  4. ^ Brown, Dan (28 July 2020). "Five Years of BookStack". BookStack. Retrieved 9 June 2021.
  5. ^ Brown, Dan (11 July 2016). "A Year of BookStack". BookStack. Retrieved 9 June 2021.
  6. ^ Brown, Dan (6 May 2019). "Beta Release v0.26.0". BookStack. Retrieved 9 June 2021.
  7. ^ Brown, Dan (9 April 2021). "BookStack Release v21.04". BookStack. Retrieved 9 June 2021.
  8. ^ "wiki". GitHub. Retrieved 9 June 2021.
  9. ^ "Installation · BookStack". BookStack. 1 January 2017. Retrieved 11 March 2023.
  10. ^ "Installation". BookStack. January 2017. Retrieved 28 June 2022.
  11. ^ a b c d "Features". BookStack. Retrieved 9 June 2021.
  12. ^ "Organising Content". BookStack. January 2017. Retrieved 9 June 2021.
  13. ^ "Hacking BookStack". BookStack. 2 February 2020. Retrieved 28 June 2022.
[edit]