| Age | Commit message | Author | Files | +/- |
|---|---|---|---|---|
| fix: Improve field names in the tag APIs | Mohamed Bassem | 4 | -15/+24 | |
| feature(api): Add REST APIs to update bookmarks, tags and lists | Mohamed Bassem | 5 | -7/+64 | |
| feature(api): Add REST APIs to manipulate lists and tags for bookmarks | Mohamed Bassem | 9 | -58/+166 | |
| feature: Add APIs to create new lists and bookmarks | Mohamed Bassem | 4 | -10/+37 | |
| featue: Add infra for REST APIs and implement GET /bookmarks | Mohamed Bassem | 6 | -1/+215 | |
feature: Allow reseting user password, change their roles and create new users.… …* How do I set the variable "user" or "system" for AI inference #262 changed from system to user * Make Myself an Admin #560 added user management functionality to the admin page * A bunch of UI fixes and simplifications --------- Co-authored-by: Mohamed Bassem <me@mbassem.com> |
kamtschatka | 9 | -52/+711 | |
feature: Log authentication failures to support fail2ban. Fixes #477 (#569) …* How do I set the variable "user" or "system" for AI inference #262 changed from system to user * [Feature Request] Log failed login attempts for fail2ban implementation #477 added logging of failed logins * [Feature Request] Log failed login attempts for fail2ban implementation #477 added more logging for extension related logins * Propagte IP to trpc --------- Co-authored-by: Your Name <you@example.com> |
kamtschatka | 9 | -12/+116 | |
| feature: Allow importing hoarder's own bookmark file. Fixes #527 | MohamedBassem | 5 | -46/+122 | |
| feature: Support regenerating AI tags only for failed bookmarks | MohamedBassem | 2 | -11/+29 | |
| deps: Upgrade nodejs to v22 | MohamedBassem | 6 | -35/+35 | |
| feature: Allow customizing the inference's context length | MohamedBassem | 9 | -36/+51 | |
| feature: Introduce a mechanism to cleanup dangling assets | MohamedBassem | 10 | -8/+351 | |
feature: Allow to disable default password login after SSO is configured. Fixes… …* [Feature Request] Allow to disable default password log in after SSO is configured #406 changed the flag to also disallow logging in via password The extensions will also no longer be allowed to log in via username/password then * [Feature Request] Allow to disable default password log in after SSO is configured #406 added the error message for OAuth |
kamtschatka | 8 | -14/+37 | |
| refactor: Start tracking bookmark assets in the assets table | MohamedBassem | 14 | -175/+1581 | |
| refactor: Include userId in the assets table | MohamedBassem | 7 | -0/+1235 | |
feature: Allow disabling password signups (#413) …* [Feature Request] Allow to disable default password log in after SSO is configured #406 Added the DISABLE_LOCAL_SIGNUPS that can be used to force OAuth signups only * rename local signups to password signups --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 5 | -3/+15 | |
| fix: Drop the usage of useCursorV2 from the server | MohamedBassem | 2 | -22/+16 | |
feature: Persevere the source URL of clipped texts from the extension. …Fixes #448 |
MohamedBassem | 13 | -31/+1246 | |
| feature(web): Async validate JWT account and sign out the user if they no… | MohamedBassem | 3 | -2/+39 | |
feature(web): Add ability to manually trigger full page archives. Fixes #398… …* [Feature Request] Ability to select what to "crawl full page archive" #398 Added the ability to start a full page crawl for links and also in bulk operations added the ability to refresh links as a bulk operation as well * minor icon and wording changes --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 5 | -6/+89 | |
| feature(web): Add ability to rerun inference on all bookmarks. Fixes 443 | MohamedBassem | 2 | -0/+35 | |
| feature(web): Add the ability to customize the inference prompts. Fixes #170 | MohamedBassem | 13 | -39/+1764 | |
| deps: Upgrade drizzle-kit | MohamedBassem | 30 | -2171/+2217 | |
fix(web):Add validation on updateTags request to ensure that an empty tagName… …* [Bug Report] Importing bookmarks adds all tags to all bookmarks #421 fixed an issue that caused all existing tags to be assigned to a new bookmark * Add validation on the input of update tags to ensure that its not empty --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 2 | -10/+39 | |
| feature(web): Show attachments and allow users to manipulate them. | MohamedBassem | 9 | -12/+544 | |
feature(extension): Allow login directly with an API key …* [Feature request] NextAuth Providers for OAuth/SSO #92 Added API key based authentication to the extension to make the extension usable when OAuth is in use * Minor UI tweak --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 2 | -9/+96 | |
| feature(web): Preserve title, tags and createdAt when importing a netscape… | MohamedBassem | 7 | -45/+189 | |
| refactor: Extract useUpload into its own reusable hook | MohamedBassem | 3 | -20/+44 | |
feature: Added support for custom OIDC providers to set up authentication.… …* https://github.com/hoarder-app/hoarder/issues/92 Added support for custom OIDC providers to set up authentication * Added support for custom OIDC providers to set up authentication #92 Showing OAuth errors in the signin page * Added support for custom OIDC providers to set up authentication #92 Added the possibility to log in using an API key in case OAuth is used * Added support for custom OIDC providers to set up authentication #92 improved the code to also promote the first user to admin if OAuth is used * revert extension changes * Simplify admin checks --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 4 | -11/+133 | |
| deps: Upgrade drizzle and next auth drizzle adapter | MohamedBassem | 7 | -54/+89 | |
| fix: Fix deleting tags broken due to wrong column name | MohamedBassem | 1 | -1/+7 | |
| feature(worker): Allow configuring inference job timeout and ollama keep alive.… | MohamedBassem | 4 | -19/+26 | |
| build: Fix sherif failures by sorting deps | MohamedBassem | 6 | -12/+12 | |
| feature(mobile): Allow editing notes from the mobile app | MohamedBassem | 4 | -32/+122 | |
| feat: Upgrade default openai models to gpt-4o-mini which are 3x cheaper | MohamedBassem | 3 | -6/+6 | |
feature(cli): Allow updating tags/lists from CLI (#211) …* Improve the CLI #209 added the possibility to assign tags to bookmarks while creating added the possibility to assign a newly created to a list right away added the possibility to add and remove tags from bookmarks * minor tweaks --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 5 | -47/+182 | |
| fix: async/await issues with the new queue (#319) | kamtschatka | 6 | -25/+27 | |
| refactor: Replace the usage of bullMQ with the hoarder sqlite-based queue (#309) | Mohamed Bassem | 13 | -344/+128 | |
| chore: Add a new sqlite based queue package | MohamedBassem | 16 | -0/+1062 | |
fix: Fix TRPC batchign failure because of long URLs. Fixes #281 (#291) …limiting the length of the URL for batched requests to prevent 431 errors |
kamtschatka | 3 | -0/+3 | |
| chore: added a new table to store the config in the database (#279) | kamtschatka | 4 | -0/+1106 | |
| fix: Renaming full page archive asset file doesn't work inside docker. Fixes… | MohamedBassem | 1 | -1/+4 | |
| refactor: fixed typos in BookmarkTypes (#268) | kamtschatka | 3 | -6/+6 | |
| fix: Increase list name size to max 40 chars up from 20. Fixes #254 | MohamedBassem | 1 | -1/+1 | |
| fix: Fix duplicate bookmarks in links with assets | MohamedBassem | 1 | -1/+5 | |
refactor: added the bookmark type to the database (#256) …* refactoring asset types Extracted out functions to silently delete assets and to update them after crawling Generalized the mapping of assets to bookmark fields to make extending them easier * Added the bookmark type to the database Introduced an enum to have better type safety cleaned up the code and based some code on the type directly * add BookmarkType.UNKNWON * lint and remove unused function --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 27 | -120/+1266 | |
refactor: remove redundant code from crawler worker and refactor handling of… …* refactoring asset types Extracted out functions to silently delete assets and to update them after crawling Generalized the mapping of assets to bookmark fields to make extending them easier * revert silentDeleteAsset and hide better-sqlite3 --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 3 | -65/+80 | |
| feature: Automatically transfer image urls into bookmared assets. Fixes #246 | MohamedBassem | 2 | -9/+23 | |
refactor: extract assets into their own database table. #215 (#220) …* Allow downloading more content from a webpage and index it #215 added a new table that contains the information about assets for link bookmarks created migration code that transfers the existing data into the new table * Allow downloading more content from a webpage and index it #215 removed the old asset columns from the database updated the UI to use the data from the linkBookmarkAssets array * generalize the assets table to not be linked in particular to links * fix migrations post merge * fix missing asset ids in the getBookmarks call --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 6 | -52/+1271 | |
feature: add support for PDF links. Fixes #28 (#216) …* feature request: pdf support #28 Added a new sourceUrl column to the asset bookmarks Added transforming a link bookmark pointing at a pdf to an asset bookmark made sure the "View Original" link is also shown for asset bookmarks that have a sourceURL updated gitignore for IDEA * remove pdf parsing from the crawler * extract the http logic into its own function to avoid duplicating the post-processing actions (openai/index) * Add 5s timeout to the content type fetch --------- Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 10 | -93/+1263 | |
| fix: Remove the bookmark update text limit (#244) | Ahmad Mujahid | 1 | -1/+1 | |
fix: Trigger search re-index on bookmark tag manual updates. Fixes #208 (#210) …* re-index of database is not scanning all places when bookmark tags are changed. Manual indexing is working as workaround #208 introduced a new function to trigger a reindex to reduce copy/paste added missing reindexes when tags are deleted/bookmarks are updated * give functions a bit more descriptive name --------- Co-authored-by: kamtschatka <simon.schatka@gmx.at> Co-authored-by: MohamedBassem <me@mbassem.com> |
kamtschatka | 6 | -55/+41 | |
| feature: Full page archival with monolith. Fixes #132 | MohamedBassem | 14 | -7/+1259 | |
| fix: Fix missing bookmarks during pagination if they got created in the same… | MohamedBassem | 5 | -20/+120 | |
| fix: Add the missing bookmark URL index migration | MohamedBassem | 3 | -0/+1016 | |
| feature(inference): Upgrade the default vision model to the new… | MohamedBassem | 2 | -2/+2 | |
| feature(crawler): Allow connecting to browser's websocket address and launching… | MohamedBassem | 3 | -36/+70 | |
| feature(worker): Allow configuring redis with a password | MohamedBassem | 3 | -0/+4 | |
| tests: Add tests for bookmark deduplication | MohamedBassem | 1 | -0/+38 | |
feature: Take full page screenshots #143 (#148) …Added the fullPage flag to take full screen screenshots updated the UI accordingly to properly show the screenshots instead of scaling it down Co-authored-by: kamtschatka <simon.schatka@gmx.at> |
kamtschatka | 4 | -3/+9 | |
| feature: Dedup links on creation. Fixes #49 | MohamedBassem | 8 | -106/+176 | |
| fix(cli): Remove limit from array length when listing bookmarks. Fixes #135 | MohamedBassem | 3 | -4/+7 | |
| fix: Allow zod to coerce the crawler timeout from strings. Fixes #134 | MohamedBassem | 1 | -2/+2 | |
| feature: Allow users to delete all unused tags in one go | MohamedBassem | 3 | -5/+89 | |
| fix: Fix error when merging empty tags | MohamedBassem | 1 | -9/+11 | |
| fix: Change tag listing API to return unused tags | MohamedBassem | 2 | -32/+52 | |
| fix: Re-index affected bookmarks when one of their tags gets updated | MohamedBassem | 1 | -30/+78 | |
| feature(crawler): Allow increasing crawler concurrency and configure storing… | MohamedBassem | 3 | -4/+26 | |
feature(web): Add ability to rename, merge and fast delete tags. Fixes #105… …* feature(web): Allow deleting tags from the all tags page * feature(web): Add ability to rename, merge and fast delete tags. Fixes #105 |
Mohamed Bassem | 14 | -269/+835 | |
| ui(web): Show bookmark URL when maximizing a bookmark | MohamedBassem | 9 | -23/+82 | |
| feature(extension): Allow adding tags and lists to newly hoarded bookmarks | MohamedBassem | 16 | -9/+617 | |
| fix: Ensure that downloaded asset images are from the allowed content types | MohamedBassem | 2 | -8/+15 | |
| feature: Allow recrawling bookmarks without running inference jobs | MohamedBassem | 4 | -9/+46 | |
| feature: Download images and screenshots | MohamedBassem | 22 | -135/+1373 | |
| fix(mobile): Fix flicker on sign in page | MohamedBassem | 1 | -5/+1 | |
feature: Nested lists (#110). Fixes #62 …* feature: Add support for nested lists * prevent moving the parent to a subtree |
Mohamed Bassem | 25 | -402/+2084 | |
| refactor: Move the shared types to the shared package | MohamedBassem | 53 | -241/+260 | |
| feature: Add title to bookmarks and allow editing them. Fixes #27 | MohamedBassem | 17 | -54/+1240 | |
| feature(web): Allow changing the bookmark grid layout (#98) | Mohamed Bassem | 20 | -268/+546 | |
| fix: Differentiate between pending in db and in redis in admin job stats | MohamedBassem | 3 | -26/+64 | |
feature: Recrawl failed links from admin UI (#95) …* feature: Retry failed crawling URLs * fix: Enhancing visuals and some minor changes. |
Ahmad Mujahid | 8 | -25/+1067 | |
| fix: Increase default navigation timeout to 30s, make it configurable and add… | MohamedBassem | 5 | -6/+17 | |
feature: Add PDF support (#88) …* feature: Add PDF support * fix: PDF feature enhancements * fix: Freeze expo-share-intent version to prevent breaking changes * fix: set endOfLine to auto for cross-platform development * fix: Upgrading eslint/parser and eslint-plugin to 7.6.0 to solve the linting issues * fix: enhancing PDF feature * fix: Allowing null in fiename for backward compatibility * fix: update pnpm file with pnpm 9.0.0-alpha-8 * fix:(web): PDF Preview for web |
Ahmad Mujahid | 24 | -107/+2387 | |
| feature(inference): Upgrade the default vision model to the new gpt-4-turbo | MohamedBassem | 4 | -10/+11 | |
| fix: Delete the API key on logout from phone or extension | MohamedBassem | 11 | -92/+84 | |
| fix: Fix type in the useAddBookmarkToList hook | MohamedBassem | 1 | -1/+1 | |
| feature(web): Allow uploading directly into lists/tags. Fixes #69 | MohamedBassem | 19 | -144/+258 | |
| feature: Extract hook logic into separate package and add a new action bar in… | MohamedBassem | 23 | -330/+672 | |
| fix(workers): Increase default timeout to 60s, make it configurable and improve… | MohamedBassem | 3 | -11/+29 | |
| fix: Refresh the all tags page automatically when a tag is modified | MohamedBassem | 5 | -83/+103 | |
| feature: Change archived meaning to only mean removed from homepage | MohamedBassem | 7 | -16/+5 | |
| fix: Delete user's assets when the user is deleted | MohamedBassem | 2 | -0/+14 | |
| fix: Incorrect counts for tags in the AllTags page. Fixes #78 | MohamedBassem | 1 | -2/+2 | |
| feature: Include server version in the admin UI. Fixes #66 | MohamedBassem | 8 | -14/+92 | |
| feat(workers): Allow configuring the language in which the tags are generated.… | MohamedBassem | 4 | -28/+8 | |
| chore(workers): Remove unused configuration options | MohamedBassem | 2 | -6/+0 | |
| feature: Split the tags in AllTags page by who used them | MohamedBassem | 2 | -40/+112 | |
| feature: Add support deleting tags | MohamedBassem | 4 | -14/+94 | |
| format: Add missing lint and format, and format the entire repo | MohamedBassem | 57 | -192/+255 | |
| fix: Sort search results by relevance | MohamedBassem | 3 | -1/+26 |