Everything seems to be working now, thank you!
Oh cool, I did not know I needed one of these!
Thank you!
Hello! Very cool userscript ![]()
I host 3 book clubs so I would like to check if they fit the expected format and if not I will correct them.
I have installed the script but the “Add Book Club” button is not visible to me on my book clubs, is it because I’m the one who have created the thread? If yes, is that something you can fix?
When I open Horimiya:
When I open This Art Club has a Problem :
Any chance it’s because この美術部 is a future book club?
Ah yeah that could be it! ![]()
Indeed I see the button as expected on あなたも殺人犯になれる!
I don’t see it on Quartet though, but maybe because it’s not a real Book Club…
Hmm, let me take a look. It should appear - I’ve got it set to appear on any page in the “Book Clubs” category.
EDIT: It appears for me. Could you make sure you’re on the latest version of the script and let me know what browser you’re using please?
It would also be great if on that page you could press F12 (or right click > inspect) to open the dev panel, then click the Console tab, and share a screenshot if there’s any errors there.
Thanks, that’s great!
For the script to work it needs a table, with “week” somewhere in one of the headers, as well as a column with dates and one with pages (start-end e.g. 5 - 15). This Art Club has a Problem for example seems to work perfectly, except for the last couple of weeks which show as January 2023 rather than January 2024. Unfortunately as most book clubs don’t include the year in their schedule table dates I haven’t yet worked out how I could solve that, so for now book clubs with weeks in the following year will just have to be fixed manually.
Hm, I don’t know why it didn’t work before, now the button is visible for me ![]()
I tried to fix the date and wrote 2023-12-02, 2023/12/02, 02/12/2023, Dec 02 2023 but each time I get Uncaught RangeError: invalid date
Which format do you accept?

Oops, that should now be fixed in 0.5.3!
Any of those date formats should theoretically work, although it would be best to use “02 Dec 2023”/“Dec 02 2023” (with the month in letters) or yyyy-mm-dd to avoid confusion and such between American/European style dates!
The script should now also correctly parse the page numbers on あなたも殺人犯になれる! - it was getting confused because the page total column was before the pages number column but that is now fixed ![]()
Use Asian-style dates and avoid said confusion. Year-month-day. We’re learning Japanese here, after all.
As an added bonus, when you write your dates in that format, alphabetical sorting is also chronological sorting.
You should be able to check the date the thread was posted, and math it out a bit.
It could be as simple as, for example:
- Thread posted 2023-12-01.
- Assume this is the year the book club begins, 2023.
- Check the table and see week 1 is ???-01-01, with the assumed year 2023 for 2023-01-01.
- Check if week 1 is before the thread post date; if so, add a year to the book club date, so it becomes 2024-01-01.
Then you can do the same for each week, where you assume the same year as the prior week, but if the current week is suddenly an earlier date than the prior week you know to add a year.
I updated to 0.5.3 and I updated my date format. It works but uses the date from one day earlier than those written in the table?
01/12/2023 instead of 02/12/2023 and so on.
(my time zone is Copenhaguen, Europe)

I hate dealing with dates/timezones
I’ll take a look later today and get it fixed. Thanks for letting me know!
Oh that’s quite a good idea, I hadn’t thought about how I could use the thread creation date. I’ll definitely implement something along those lines!
Consideration: Only show the “Add Book Club” button if the thread is in the “Book Clubs” category.
Not needed here:
Good here:
Huh. It should only be showing in the book clubs category
I’ll take a look to see if I can replicate the issue…
EDIT: I’m failing to replicate the issue - would be great if you could link me the thread you had the issue with as well as reload it and see if it’s still there even though it shouldn’t be
Should be fixed in the latest version? Sorry about all the date issues - for some reason I’m apparently really bad with dealing with time zones in JavaScript… ![]()
That is never easy haha.
Thanks for all the fix, now the Book Clubs I host can be imported by just a click, awesome!
I took a while to sort this out but the positioning should now look a bit more normal in situations like that where the number of weeks doesn’t divide nicely between the rows!
I will also get to your request to add an option to show all clubs without a scrollbar, I promise!
IRL has just been taking up lots of time the past week…
Here is an example thread where I’m seeing it:
Note: I’m on Chromium using the Tampermonkey extension.
I edited the checkPage() function to add a console.log so I can see what’s happening:
let categorySpans = document.querySelectorAll(".category-name");
for(let i = 0; i < categorySpans.length; i++) {
console.log(categorySpans[i].innerHTML)
When I freshly load that thread, the output is:
Japanese Language
Grammar
Book Clubs
Next, I picked a random Campfire thread. The output:
Campfire
Campfire
As I scrolled down the thread, more “Campfire” outputted in the console.
Then I did a PageDown and got:
Campfire
Book Clubs
Campfire
Book Clubs
I have no idea where the “Book Clubs” output is coming from, as I don’t see it in the source of the page.
I modified the code as follows to fix it for me:
// Check if the current page is a book club page
function checkPage() {
if (document.querySelector('div.title-wrapper a.badge-wrapper[href*="book-clubs/73"]') == null) return;
if(!bookClubs) bookClubs = loadBookClubs();
addBookClubButton();
}





