I saw right when I was going to post this that someone else had already posted something similar, but I thought I'll go ahead and post it anyway as an alternative.
I threw together a simple side panel last night that lists all magazine subscriptions sorted alphabetically. I've also added a simple search box to quickly filter the list.
Edit: Listening to the feedback, I've added some (hopefully) improvements:
First major release!
The project had grown much larger than I had initially anticipated, to the point that it had started to become very difficult to maintain.
This release features a completely overhauled codebase, making it significantly easier to develop. It has also enabled me to move away from relying purely on DOM manipulation and instead move towards a more object oriented approach where each magazine handles its own state and presentation.
There is still a lot of cleanup left to do, but with this restructure, it enabled me to introduce a few hopefully interesting new features:
A few words about the recently viewed sections. If this is enabled, any time one navigates to a certain magazine (in any way), a time stamp is stored in local storage of when the magazine was last visited. While the data is of course only stored on the local device, some people might still not want to record such data at all for privacy reasons.
If the recently viewed section is disabled in settings, this data is not recorded and any existing data is removed. I've also added a reset button in settings, which removes all settings, cache and magazine data from the device.
Note that if "always mobile menu" is turned on, both the alternative menu and the original menu will be visible. May require reload to fully apply.
The 2.0 release was quite a hefty project compared to the previous versions. While I did squash a few old bugs, it wouldn't surprise me if a few new ones might still be lurking around in there.
If you guys happen to find anything, just give me a shout and I'll look into it as soon as I can.
Damn cool update Perry. One question for you: I added css scroll to the subscription panel, however now with the new edit section the star and ignore tool ignore the scroll function. Are they in a container or is there a way i can get it to scroll with the rest of the elements? I attached an image of what I mean
I've released an update that adds an option in the settings to enable sticky panel. There are quite a lot of edge cases and I'm not entirely sure that I'm completely happy with how the panel scrolling behaves.
I will need to tinker a bit more with it, but at least it should work in the most basic sense.
perfect thank you!
Very good for keeping track of communities I want to see fly off, thanks!
Nice work on version 1.0! Looking really good.
A minor bug that appears for me is that when the cache is not used, the spinner is always shown (not spinning, but visible) at the bottom of the list, even when the list is collapsed.
Also, when you have more than one page of subscriptions, only page 1 is checked.
IMHO the default (if not only option) should be to use the cache, and fetch all pages, storing the list for e.g. 24 hours, or until the user presses a refresh button. That way performance is good (for both the user and the instance itself), and if someone subscribes to a new community and notices that it's missing, it can be fixed in a second or two.
Edit: I was actually using version 1.1. I think I managed to grab in between you posting it to greasyfork and updating the post!
I've released a new update that should fix the issues you mentioned:
Some words about the cache. As it right now, if there is a cache available it will instantly be presented, while the actual live subscription list is simultaneously loaded in the background. A bit unnecessary, perhaps, since the subscriptions tend to not change that often. I will look into finding a smarter solution without sacrificing usability too much.
Really well done, wondering if there's a way to integrate it with mobile devices, I can use tampermonkey with KIWI browser.
I've released an update that should make it work on mobiles. I only have an iPhone so I can't actually test it live (except with the device emulator in Chrome) so give me a shout if it doesn't work properly.
Great! I'm keeping yours installed for now since it pulls in the paginated subscriptions pages (and I love the grouping!)
I've got it working on my end, and super easy. here's what I'm using (although I adjusted the height and width to fit my custom script so remove whatever you don't prefer):
aside#subscription-panel-content {
margin-left: 15px;
background-color: #1a1a1b!important;
border: var(--kbin-options-border)0px!important;
color: var(--kbin-section-text-color);
margin-bottom: .5rem;
margin-right: 18px!important;
margin-top: -5px;
padding-top: 2rem;
padding-right: 1rem;
padding-left: 1rem;
padding-bottom: .4rem;
border-radius: 0 0 .5rem .5rem !important;
height: fit-content;
position: relative;
}
div#subscription-panel ul {
overflow: scroll;
height: calc(100vh - 270px);
}
I think the closest equivalent I have is if you enable the mobile menu. You would of course have to click to open the menu, but then you would have a floating modal that you can scroll through.
I guess I could technically add an option to enable inline scrolling, but it would probably look pretty weird since my implementation is based on a side panel rather than a floating element that the other one uses. I'll see if I can experiment a bit, but don't hold your breath for this one :)
Dude, the magazine grouping is a sick addition! well done.
this is great. thank you. any way to make the center column wider so its not so squeezed?
edit: attached an image of what it currently looks like
If you update to the latest version, you can now open a settings modal by clicking on the cog wheel in the header, where you can choose to increase the width of the page.
Note that the reason why I didn't make it default is that I'm not entirely sure what this might break. If I'm lucky everything will just work as expected, but I'm leaving it as a setting just to be safe.
just browsed around the site and everything works great so far. thanks for the update!
This was the one consistent missing feature in Kbin that bothered me. Thanks for Posting this! It will be especially useful as we try to grow new smaller niche communities, while still taking part in the general conversation of the popular posts.
Excellent! This really helps in providing efficient access to favorite and recently used subscriptions. Thanks!
Oh, I haven't tested that actually. I can look into it. Does it work when you're browsing in Safari?
Edit: It seems like Safari extensions are disabled on iOS/iPadOS in PWA mode. Password managers work, but ad blockers, userscripts e.t.c. do not. Maybe my Google-fu is just weak, but I couldn't find much information about it other than what I see myself when testing on my own device. I'll keep looking, but if you find something yourself, please give me a shout.
have you seen this by any chance ?
"kbin Enhancement Suite: a community-curated script manager that lets you customize your kbin experience"
I would love to see your Subscription Panel addet to the KES MegaMod
https://kbin.social/m/kbinMeta/t/183928
At the moment there is a bug when i use KES and on of your scripts where the Search Icon in the top right corne changes to the "Subs"/"List" icon. I reported it to them aswell.
It appears that it has been fixed in KES such that the icons don't collide anymore. Nevertheless, I've added a new option in version 2.8 to enable an alternative placement of the mobile menu, in case there are any other compatibility issues with other scripts in the future.
@kbin.social
Custom CSS and JS to help improve your Kbin experience! ### Userscripts Greasy Fork ### Stylesheets UserStyles.world ### Userscript managers
go to feed...
@kbin.social
Custom CSS and JS to help improve your Kbin experience! ### Userscripts Greasy Fork ### Stylesheets UserStyles.world ### Userscript managers
go to feed...
Hey! Thanks for this.
Would there be a way to make it toggleable to reclaim the space when it's not needed ?
save