4 title = "BookStack in 2023"
5 image = "/images/blog-cover-images/cc-by-4/winter-gardens-scott-wylie.jpg"
7 slug = "bookstack-in-2023"
9 date = 2024-01-04T12:00:00Z
12 As we enter into 2024 I thought we'd once again look back over the past year to
13 see how the project has evolved, in terms of both the core platform and the
14 supporting working, including the current funding seen throughout 2023.
18 With 2023 now complete that marks another completely year where I've been focusing on BookStack
19 instead of being employed elsewhere. Looking back to [my 2022 post](https://www.bookstackapp.com/blog/bookstack-in-2022/)
20 I had totalled about £15k of funding, with the rest of my living costs being paid for via personal savings.
22 For 2023 I'm pleased to say funding has increased to about £25.8k across our revenue streams!
23 While this excludes most taxes and costs, this marks a substantial increase and exceeds
24 the £24k target set out in my [7 years of BookStack post](https://www.bookstackapp.com/blog/7-years-of-bookstack/#working-on-bookstack-full-time--financial-stability).
25 Here's a breakdown of this funding:
27 
29 [GitHub sponsors](https://github.com/sponsors/ssddanbrown) has been relatively stable throughout the year, with a little fluctuation due to one-off donations and sponsors dropping in/out, and the december spike reflecting up-front sponsorship payment.
30 Usage of [Ko-Fi](https://ko-fi.com/ssddanbrown) has increased during 2023, with a current monthly recurring membership of £127 between donators and sponsors, with frequent one-off donations in various sizes.
32 The biggest growth factor by far has been through the support services.
33 As you can see, I've had monthly income through support services to help bolster income.
34 The lack of services reflected in December is due to how I report on these figures. Services were purchased in this month, but they'd be reflected in Jan 24 numbers.
35 Renewal of support services upon those purchase last year has been healthy which, when combined with new subscriptions, has resulted in a stable
36 revenue source that's really helped stabalise and boost income.
38 I can't thank enough all those that have donated, sponsored, or purchased support offerings.
39 It's incredible to me that I'm able to pretty much cover my living costs, while building and sharing
40 an open source project, without needing to gate or lock features behind paywalls & barriers, and without
41 having money dictate the direction of the project.
43 Now that I had a stable income source, as I was no longer burning
44 through savings, I could now adopt a cat again so a thanks also from this
45 handsome little lion named Ben who I adopted at the start of December:
47 <img src="/images/2024/01/ben.jpg" width="320">
49 Ben will take a primarily motivational role on the BookStack project, while also acting as our chief mouser.
51 ### New Features & Enhancements
53 Within 2023 we've published 7 feature releases, with 15 patch versions for those.
54 The below list summarizes many of the most significant additions and changes made during these releases:
57 - System CLI for common maintenance tasks
58 - App shortcut icon control
59 - Default page templates within books
61 - Separate dark/light mode color options
62 - Image manager UI and behaviour overhaul
63 - WYSIWYG editor for descriptions
64 - Nesting support for page includes
65 - Comments in the editor sidebar
66 - Permission system logic revamp
67 - Overhaul of page include back-end logic
69 - Page editor design update
71 - OIDC logout integration
72 - Book, and shelf-book, sorting made accessible with improved UX
73 - Updated underlying framework to Laravel 9
74 - Updated code handling to CodeMirror 6
83 - Content ordering support
85 - Expanded JavaScript event hooks
86 - Added logical theme events
87 - Added more customization-focused partial views
89 Looking across what has been achieved I'm really quite happy with the balance between new features & systems,
90 and improvements to existing features & systems.
91 I'm always trying to keep a focus on building upon, and improving, the platform for our existing user
92 base instead of chasing a wider audience via new features, and I think we're keeping to that focus well.
94 The overhaul of permissions logic stands out in that list as a particular pain-point to work on due to
95 the logical complexity involved, but I'm happy I spent the time to get that in order rather than
96 leaving in unpredictable logic.
98 Some favourites for me, although they're minor, are the overhauls to sorting and image management.
99 This work involved updating older interfaces so digging in to refresh these in a meaningful way, with
100 a much bigger focus on accessibility, was pretty enjoyable to get into while resulting in
101 clear visual benefits to the user, unlike most time spent working on back-end improvements.
103 ### Website Usage & Audience Reach
105 Looking at the [BookStack website analytics](https://analytics.bookstackapp.com/bookstackapp.com)
106 we can compare activity between 2022 and 2023 to understand year-relative growth
107 in website usage and audience reach:
109 
111 Across visits and page-views, we can see a general average growth between 10% and 20%.
112 This is a bit lower than the 45% growth last year, but is not bad considering I've done almost no
113 additional outreach or marketing content pushes this year, so a ~15% growth indicates
114 a nice steady natural rise.
115 Last year we started the year very strong with [reaching the top of Hacker News](https://www.bookstackapp.com/blog/9000-stars-and-the-effects-of-hacker-news/),
116 which then boosted activity for a good while, but there hasn't really been any spikes or visitor boosts
117 from anything similar in 2023.
118 Maybe I need to put more active effort into marketing in 2024 although it's not clear if there's a reason to do so,
119 and slow & steady growth has it's own benefits of being more manageable and requiring less resources.
120 To be honest, as long as we're trending in the right direction, I'm happy.
121 I'd rather not chase numbers for the sake of it.
123 ### Videos on YouTube & PeerTube
125 Throughout 2023 I've kept up publishing videos, one for each feature release with extra videos
126 here and there to provide guidance and/or insight for the project.
127 Here are the [BookStack YouTube channel](https://www.youtube.com/c/BookStackApp) general stats for the year:
129 
131 You may notice the estimated revenue shown there. Earlier this year the channel met the requirements for monetization
132 so I'm now able to earn a little bit of bonus revenue from these videos.
133 Money isn't really the target though, as it's very far from covering the effort in making this content.
134 These videos are really about building this extra resource and community hub, while providing
135 a means for me to celebrate and emphasise work being done for the project.
136 Folks dunk on YouTube comments as being a toxic place, but generally the feedback I get is
137 wonderfully wholesome which feeds my motivation for the project.
139 As you can see from the other stats, we've generally had good growth overall, even as
140 I recently promote the YouTube content less in favour of the [PeerTube alternative I set-up](https://www.bookstackapp.com/blog/bookstack-on-foss-video/).
141 I've been meaning to play around with shorts, just to provide quick summaries for releases, but my recording flow & format doesn't really make this easy.
143 The usage of the [BookStack PeerTube channel](https://foss.video/c/bookstack/videos) has gone well so far.
144 Views and usage is predictably a lot lower than our established YouTube presence, but I've really liked the fact
145 we're not forcing folks to view ads, or submit to Google's privacy requirements, when sending visitors to video
146 content from the BookStack site. Plus it's nice to be a part of the open social fediverse.
148 On the subject of video and YouTube, in August [I spotted BookStack](https://fosstodon.org/@danb/110956729212142440)
149 used within a Linus Tech Tips video, which was pretty awesome to see.
150 From what I could tell, it's likely an instance set up by Floatplane which LMG labs were also
153 ### AI Impact on BookStack
155 AI has been a massive subject for this year as LLMs & image generation has exploded in use.
156 Personally, I've found LLMs to be quite useful in some select cases, although I'm still conflicted on the
157 the morality of the training process and their overall impact on the world.
158 They seem to be becoming a bigger part of society though, so it's probably important to keep tabs on their use
159 along with their co-existence and potential benefits for projects like BookStack.
161 In regard to LLM usage in BookStack, earlier this year I came across [Danswer](https://docs.danswer.dev/introduction)
162 which I built an integration for which allowed Chat-GPT querying of your BookStack content.
163 I talked about this more, along with a demo of this integration, [in my video here from about 4:28](https://foss.video/w/mB67n8JBBHb9mSMYUM5DED?start=4m28s).
164 This is probably the most valuable usage of LLMs with a system like BookStack.
165 I've also heard some other good ideas like using LLMs to generate out templates, or base page content.
166 Another neat idea is using image generation to create book and shelf covers.
167 Most of these desired should be possible via existing integration methods for the most part although
168 as LLM/AI options, and the desired usages of them, evolve we may start to see areas where we can
169 specifically provide interfaces to help these kinds of tools.
171 Outside of the core platform, we'd also seen AI's impact in our issue management, as well as in
172 external news content for BookStack, both of which reflects the downsides of AI:
174 On issue management, I've had a couple submitted that were clearly filled out using an LLM.
175 I don't mind a LLM used to help where it adds value, to assist user written content.
176 Unfortunately though, in these cases, it has simply been used in feature requests to back up the request
177 with many paragraphs of generic text that has barely a grasp of what BookStack is.
178 These cases are a little frustrating as it just serves to waste my time, in attempting to extract any underlying intent
179 and value. I'm having to somewhat reverse the content to their original prompt.
180 The questions on our feature request form are to understand the value to users, not those imagined by a text generator.
182 In regard to news content, BookStack [was featured on Laravel news](https://web.archive.org/web/20231109033107/https%3A%2F%2Fp.rizon.top%3A443%2Fhttps%2Flaravel-news.com%2Fbookstack-documentation-wiki-software) which was awesome as a long-term reader of the site myself.
183 Unfortunately when reading it was quickly clear the article was LLM generated since many of the features detailed
184 reflected a limited grasp on understanding BookStack while some of them were just wrong & misleading.
185 Due to these issues, I didn't feel I could celebrate or share the article as that would just propagate this incorrect content.
186 Instead I emailed the site to notify them of the inaccuracies, with advised changes, although I had to follow that up [with a Tweet](https://twitter.com/bookstack_app/status/1722457925900280074) a few days later to prompt some action. It was then promptly updated using the text from our website.
191 [Earlier in the year](https://www.bookstackapp.com/blog/hacks-on-the-site/) I set-up the [BookStack hacks site](https://www.bookstackapp.com/hacks/)
192 as a means to publish potentially useful hacks & customiziations for easy re-use.
193 So far this has been a useful resource to point folks to when required, although at the same time there have been a few cases
194 of folks relying on these hacks without the knowledge to maintain them, requiring them to need support in some cases,
195 even though we clearly mark them as risky and unsupported.
197 There's a tricky tension in these hacks, as it provides functionality we can't or don't want to support in the official project,
198 but people may inherently assume official support since they're listed on our site.
199 Warnings are there to help prevent this, but they are not a solid defence.
201 Within the last few months, I added a method to pay for hacks to be updated, as a potential means to keep them updated
202 for current BookStack versions in a way that's sustainable and worthwhile.
203 Though this may further feed into the above issue and increase that tension.
204 I've had one purchase through this so far, for which they required further support in use/application.
206 For now, I'll keep steadily growing & maintaining the hacks site as I've been doing so far, but I'm going to keep an close
207 eye on how this is used and its support impact, assessing potential options to ease/improve that tension.
211 Looking to start of 2024 I'd like to take a step back and try out some newer technologies in the PHP space
212 to see how they can impact or benefit BookStack users. These are newer PHP server projects
213 like roadrunner and FrankenPHP.
215 I'd like to make some improvements to our site and docs this year, particularly around documenting
216 common tasks that are often discussed in support, alongside higher level information about the project
217 which is often requested in our community channels. Just details like how the project is managed,
218 the vision for future changes, thoughts on growth, our view on providing hosting services for BookStack.
219 I'm thinking this might be under a new "governance" part of the site.
221 In terms of my personal plan, I intend to keep working on the project as my primary full-time job,
222 especially now that I'm in the bounds of being somewhat financially stable.
223 Over the next year I'd like to become a little more open and active to outreach and community building.
224 As an example, I was invited to be on a podcast which I've yet to accept because that kind of
225 thing makes me really nervous as a super introvert, but I think it'd be fun to do while helpful for the project.
227 Otherwise, as we go into the next year I just want to thank everyone that's supported me and the project
228 over the last year. That's not limited to just financial support, that includes all the contributors,
229 translators, community members, folks recommending us on Reddit & other channels, those getting
230 involved in discussions on GitHub, those making articles and videos about BookStack. All these kinds
231 of things really do help in both supporting the project directly or providing motivation to those
232 working on the project. Thanks.
236 <span style="font-size: 0.8em;opacity:0.8;">Header Image Credits: <span>Photo by <a href="https://commons.wikimedia.org/wiki/File:Stowe_Landscape_Gardens_Early_Winter_Morning_Frost_10.jpg">Scott Wylie (CC-BY-4)</a> - Image Modified</span></span>