BookStack is an open supply, web-based documentation system, that permits you to create a structured data retailer for private, crew, or firm use. BookStack focuses on ease-of-use and design to offer an expertise appropriate for an viewers with, doubtlessly, blended expertise in expertise. It’s constructed upon the PHP framework Laravel, with MySQL or MariaDB used as a datastore.
I constructed BookStack after looking for a documentation or wiki system for my office. Confluence was the closest choice to go well with my necessities however the user-based pricing launched a barrier. The closed nature of Confluence additionally raised inquiries to the longevity of the documentation I’d be constructing. In the top, I made a decision to construct my very own platform to go well with my wants. I launched it underneath the MIT license to provide again to the open supply neighborhood that I’d come to like and profit from through the years.
Content hierarchy and group choices
To preserve issues acquainted and intuitive, BookStack makes use of real-world e book phrases to explain its group construction. Documentation content material is created as a “Page”:
- Pages belong to a particular “Book”.
- Within a Book, Pages can optionally be grouped up into “Chapters”.
- As your documentation grows, you may then use “Shelves” to categorize Books, with Books having the ability to be a part of a number of cabinets if wanted.
This construction sits on the coronary heart of BookStack, and may typically be the love-it-or-hate-it deciding facet of whether or not BookStack is appropriate on your use case.
Upon this core hierarchy, BookStack additionally offers tagging, person favorites, and superior search capabilities to make sure content material stays discoverable.
Writing documentation
The main technique of writing documentation in BookStack is thru using its what-you-see-is-what-you-get (WYSIWYG) editor, which makes use of the open supply Tiny venture. This editor offers a variety of content material codecs together with:
- Various header ranges
- Code blocks
- Collapsible blocks
- Tables
- Images
- Links
- iFrame embeds
- Alert callouts
- Bullet, numbered and duties lists
- Drawings (by intregration with the open supply diagrams.net)
If you favor Markdown, you should utilize the built-in Markdown editor, which offers a dwell preview and helps the identical characteristic set because the WYSIWYG editor. If permission permits, you may even soar between these editor choices relying on the web page you are modifying.
How your knowledge is saved
Documentation is saved inside a MySQL or MariaDB database in a comparatively easy HTML format, along with the unique Markdown content material if Markdown was used. Plenty of design and growth selections have been made to maintain this HTML format simplistic. It makes use of plain commonplace HTML parts the place potential, to make sure uncooked documentation content material stays open and transportable.
Uploaded photos, attachments, and created drawings are saved on the native filesystem however can optionally be saved in an s3-compatible datastore just like the open supply MinIO.
To preserve your content material accessible, there are built-in choices to export content material as PDF, HTML, plain textual content, or Markdown. For exterior consumption, there is a HTTP REST API and a webhook system. In phrases of extension, a “logical theme system” permits operating of customized PHP code upon a variety of system occasions.
Ready for enterprise
BookStack comes with a variety of options to help enterprise environments. Support for a variety of authentication choices are built-in, together with SAML2, OpenID Connect, and LDAP permitting straightforward single-sign-on utilization with platforms comparable to KeyCloak. MFA choices can be found and will be mandated primarily based upon position. An audit log offers full visibility of modification actions throughout an occasion.
A full role-based permission system offers directors full management over create, view, replace, and delete actions of system content material. This permits per-role system defaults, with choices to set customized permissions on a per-hierarchy merchandise foundation.
A neighborhood of help
After being energetic for over 7 years, the neighborhood for BookStack has grown with numerous avenues for dialogue and help. We now have:
If you wish to play with BookStack, you may strive it out on our demo site. To discover ways to arrange your personal occasion, go to the installation page of our documentation.