Welcome to the 0.17.0
release of Hoarder. We have a bunch of new features and UX improvements including SSO support (finally), bulk tag/list actions, better bookmark importing experience, and bunch of other stuff. In this release, we're welcoming @nghduc97 and @Mxrk as first time contributors!
If you're enjoying Hoarder, you can consider supporting it here ☕️.
New Features
- Single Sign On (SSO) support is finally here for OIDC compliant providers. This was the most requested feature and it's now here thanks to @kamtschatka. You can read about how to configure it here.
- We've done multiple improvements to the bookmark importing experience:
- Bookmark importing now live in the settings page.
- You can now import bookmarks from a Pocket export.
- Imported bookmarks will keep their title, tags and creation date.
- A new list will be created that will include all your newly imported bookmarks. You can remove/rename this list after making sure that everything went according to plan.
- You can now customize the banner image for links and manipulate all its other attachments in the bookmark preview page.
- You can now bulk add/remove tags and lists to bookmarks.
- Some mobile app improvements:
- In case you were facing issues connecting to hoarder from the app, there's now a "Connection testing" functionality that shows you a more descriptive issue about the problem you're hitting.
- The app was by default following the theme (e.g. light/dark mode) of the system. You can now configure explicitly the theme that you want in the settings.
- There's a new floating quick add button to quickly save new bookmarks from within the app.
- For ollama users, you can now configure the timeout of the inference worker in case ollama's responses are slow. You can also configure a model keep alive TTL so that ollama can drop the model from memory if it's not used for that configure period.
- We have a new compact layout to quickly skim through your bookmarks.
UX Improvements
- In the tags editor, you can now quickly remove the last tags by pressing backspace.
- The tags editor will now feel much faster by optimistically applying the changes before they are committed on the server.
- On the mobile app, server errors (e.g. connection errors) will have a much better UI indicating the problem and giving you an option to retry.
- Lists are now sorted alphabetically thanks to @kamtschatka.
- Signup dialog now shows a less confusing message when signups are disabled thanks @nghduc97
Fixes
- Completely deleting a tag was broken, now it's fixed.
Screenshots
New Mobile Settings Page
Connection Testing
SSO Support
Compact Layout
New Import UI
New Bulk Actions
New Attachments Section
Upgrading
To upgrade:
- If you're using HOARDER_VERSION=release, run
docker compose pull && docker compose up -d
. - If you're pinning it to a specific version, upgrade the version and then run
docker compose pull && docker compose up -d
.
All Commits
- fix(web): Show a scrollbar in the tag editor. Fixes #368 (#404) by @kamtschatka in d0e7ca2
- feature(web): Show attachments and allow users to manipulate them. by @MohamedBassem in a770e55
- release: Release mobile and extension to include SSO changes by @MohamedBassem in 55f5c7f
- feature(mobile): Allow users to login with API keys in the mobile app by @MohamedBassem in 5fe330c
- feature(extension): Allow login directly with an API key by @kamtschatka in 26521b7
- feature(web): Add support for importing bookmarks from Pocket by @MohamedBassem in 9dd6f21
- feature(web): Preserve title, tags and createdAt when importing a netscape html. Fixes #401 by @MohamedBassem in d62c972
- feature(web): Move bookmark imports into settings by @MohamedBassem in 52024ab
- refactor: Extract useUpload into its own reusable hook by @MohamedBassem in 6b5c597
- feature(web): Add healthecheck api endpoint (#332) by @Mxrk in 3377969
- build: Fix nextjs build after upgrading to 14.2 by @MohamedBassem in 7cd857c
- deps: Upgrade turbo by @MohamedBassem in 8fa2009
- deps: Upgrade nextjs to 14.2.13 by @MohamedBassem in 55201db
- docs: Fix docs build and add sso to readme by @MohamedBassem in e585ce6
- fix(web): Better message when signups are disabled (#374) by @nghduc97 in 34fb5fb
- feature: Added support for custom OIDC providers to set up authentication. Fixes #92 (#307) by @kamtschatka in b9724b7
- deps: Upgrade drizzle and next auth drizzle adapter by @MohamedBassem in 80749d5
- fix: Fix deleting tags broken due to wrong column name by @MohamedBassem in fb63f55
- feature(web): Alphabetical sorting for lists. Fixes #315 (#351) by @kamtschatka in 064d5f8
- feature(web): Add a compact layout. Fixes #379 by @MohamedBassem in 47939a5
- feature(worker): Allow configuring inference job timeout and ollama keep alive. Fixes #389 #224 by @MohamedBassem in f263f9e
- fix(web): removing referrer header when clicking on links. Fixes #387 (#388) by @kamtschatka in 3b8cebb
- fix(mobile): Fix some icon colors in dark mode by @MohamedBassem in 095995d
- feature(mobile): Add a page for testing connection to server by @MohamedBassem in 3452e47
- feature(mobile): Add settings page for configuring the theme by @MohamedBassem in 66fcf02
- feature(mobile): Add proper error handling for server errors by @MohamedBassem in b9c7857
- docs: Update screenshots in docs by @MohamedBassem in 09e16ba
- release(mobile): Bump mobile version to 1.6.2 by @MohamedBassem in 21aaf83
- feature(mobile): Show the view bookmark modal for links as well by @MohamedBassem in cddae8f
- feature(mobile): Add a floating button for quickly adding new bookmarks by @MohamedBassem in 2bfa73f
- readme: Add full page archive and bulk actions to readme by @MohamedBassem in 3944505
- fix(web): Add optimistic rendering for the tags editor by @MohamedBassem in 300f3c5
- feature(web): Manage tags in bulk actions by @MohamedBassem in 67729c1
- feature(web): Pop tag in TagEditor on pressing backspace. #368 by @MohamedBassem in 6d4d1a6
- feature(web): Show the number of bulk selected bookmarks by @MohamedBassem in 77adb84
- feature(web): Allow adding to lists in bulk actions. #368 by @MohamedBassem in ddc7e5d