aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* fix: switch import / export icons (#1682)Harry Peach2025-06-291-2/+2
|
* fix(workers): Disable the metascraper readability as it's causing slowness ↵Mohamed Bassem2025-06-221-2/+0
| | | | in worker
* fix(workers): Fix jsdom console logs leaking into worker logsMohamed Bassem2025-06-221-2/+3
|
* feat(workers): adding a local metascraper plugin for Reddit posts (#1302)David Woods2025-06-224-180/+220
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * chore: metascraper 5.x comes with its own types, including @types/metascraper is now redundant; also updating to latest versions of metascraper libraries * feat (workers): creating a local metascraper plugin for Reddit posts In the past, the preview images for bookmarks from Reddit links were poorly chosen. Reddit does not use opengraph tags, so metascraper-images simply looked for all images on the page and returned the first. This tended to be the profile picture for the poster for the Reddit link. This new plugin, using the existing metascraper framework, provides a better selection of image for the bookmark when the URL domain is 'reddit'. In addition, recent changes (I believe this was a side effect of adding the metascraper-author and/or the metascaper-publisher plugins, but it could also be related to the metascraper-readibility plugin) broke what used to be a good choice of bookmark title. Previously, titles looked like 'Tinyauth just reached 1000 stars! : r/selfhosted' with both thread title and subreddit mentioned. After this update, all Reddit posts now have the same title: 'The heart of the internet'. To return to the better format, this new metascraper-reddit plugin now attempts to retrieve the better title from reddit URLs. Note that in order to gain precendence in title selection, the 'metascraperReddit()' inclusion in the crawlerWorkers.ts metascraper instantiation list had to be moved above metascraperReadability(). * chore: updated Hoarder in text to Karakeep * chore: update metascraper versions fix for metascraper types has been merged; the expect-error comment can be removed * chore: merge with master --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* fix(tags): normalise leading hashes in tag names (#1317) (#1351)Mostafa Wahied2025-06-225-7/+56
| | | | | | | | | | | * fix(tags): normalise leading hashes in tag names (#1317) * move the transformation to zod * fix openapi spec --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* feat(workers): migrate from puppeteer to playwright (#1296)Mael2025-06-228-539/+151
| | | | | | | | | | | | | | | | | | | | | | | * feat: convert to playwright Convert crawling to use Playwright instead of Chrome. - Update Dockerfile to include Playwright - Update crawler worker to use Playwright API - Update dependencies * feat: convert from Puppeteer to Playwright for crawling * feat: update docker-compose * use separate browser context for better isolation * skip chrome download in linux script * readd the stealth plugin --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* feat(mobile): Add tag clearing functionality to tag list (#1595)Ashok Úradníček2025-06-221-1/+31
|
* fix(mobile): always visible search bar in tags list (#1596)Ashok Úradníček2025-06-221-0/+1
|
* fix: minor changes to the tagging prompts (#1474)Olicorne2025-06-221-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat: add optional `thinking` key to tagging response schema * prompt: fix indent * prompt: remove extra 'language' word * prompt: use xml as separator * revert: dont use a thinking tags Signed-off-by: thiswillbeyourgithub <26625900+thiswillbeyourgithub@users.noreply.github.com> * prompt: don't ask to include website tags * prompt: aim for 5 tags * prompt: dont tell bot its a bot * prompt: propose a tag_error * Revert "prompt: propose a tag_error" This reverts commit 78c5099a187960cc3697b77f2b2bd687edb015f3. * minor prompt tweaks * minor prompt tweaks take 2 --------- Signed-off-by: thiswillbeyourgithub Co-authored-by: Mohamed Bassem <me@mbassem.com>
* build: Install script v3.0 - Bling version (#1576)Chris2025-06-221-115/+248
| | | | | | | | | - improve error-handling - add colours - add help (-h) and optional verbose (-v) option - progress indicator - rearrange some functions; add SPINNER_PID - add colourful header - add refinements
* feat: Add Helm chart (#1350)Sheya Bernstein2025-06-226-0/+240
| | | | | * Add Helm chart * Add chrome temp dir and flags
* chore: More oxlint changesMohamed Bassem2025-06-2223-87/+24
|
* chore: migrate away from eslint to oxlint (#1642)xuatz2025-06-2270-1695/+1174
| | | | | | | * chore: migrate away from eslint to oxlint * revert turbo task name lint * it seems like we can remove the seemingly default globals
* docs: update meilisearch key generation instruction (#1651)Kyle Wilson2025-06-2214-14/+15
| | | | | * add pipe for trimming invalid characters when generating meili master key * fix table row for MEILI_MASTER_KEY in versioned_docs
* fix: Fix webhook not firing on deletion. Fixes #1613Mohamed Bassem2025-06-213-19/+23
|
* feat(admin): add confirmation dialog for user deletion (#1648) (#1649)Deepanshu Saini2025-06-212-10/+32
| | | | | | | | | * feat(admin): add confirmation dialog for user deletion (#1648) * No need to manage dialog state --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* fix: Collapse long runs of repeated whitespaces before tokenization to avoid ↵Mohamed Bassem2025-06-211-0/+9
| | | | choking the tokenizer. Fixes #1622
* fix: Change public image's signed tokens to be time aligned for better cachingMohamed Bassem2025-06-215-6/+140
|
* fix: Fix oauth creation failure due to missing UserSettings table. Fixes #1583Mohamed Bassem2025-06-214-45/+81
|
* fix(mobile): tweaks to mobile app icon padding + added iOS tinted variant ↵Alex Stevenson-Price2025-06-213-1/+4
| | | | | | | (#1620) * Added more padding to mobile app icon * Added iOS tinted app icon variant
* fix(workers): video downloader should log yt-dlp errors (#1624)irobot2025-06-211-3/+6
| | | | In the event that yt-dlp errors out, the error details should be logged. yt-dlp prints out the error message to stderr.
* chore: add start-dev.sh for laziness (#1628)xuatz2025-06-211-0/+77
| | | | | * chore: add start-dev.sh for laziness * include chrome in start-dev.sh
* i18n: Add Greek translation (#1564)apo-mak2025-06-152-0/+482
| | | | | * Add Greek translation * pnpm format:fix
* docs: Mention the community safari extension in the quick sharing docs (#1562)simplytoast12025-06-151-0/+3
| | | | | | | | | | | | | | | * Update 05-quick-sharing.md Added community project extensions * Update docs/versioned_docs/version-v0.25.0/05-quick-sharing.md Co-authored-by: Mohamed Bassem <me@mbassem.com> * Update the main docs not the versioned ones --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* release(cli): Bump CLI version to 0.25.0Mohamed Bassem2025-06-151-1/+1
|
* build: Pin ios github action to macos-15 to comply with apple'sMohamedBassem2025-06-101-1/+1
| | | | requirement for min ios SDK
* fix: Fix UI infinite recursion by upgrading radix packagesMohamed Bassem2025-06-084-999/+511
|
* deps: upgrade to pnpm@9.15.9 (#1544)xuatz2025-06-0811-11484/+8618
| | | | | | | | | | | | | * feat: upgrade to pnpm@9.15.9 * extra stuff * unpin mobile deps * unpin root package.json deps too --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* docs: Release the 0.25.0 docsMohamed Bassem2025-06-0889-173/+5149
|
* release(mcp): Release mcp 0.25.0Mohamed Bassem2025-06-081-1/+1
|
* release(extension): Bump extension version to 1.2.6Mohamed Bassem2025-06-081-1/+1
|
* release(mobile): Bump mobile version to 1.7.0Mohamed Bassem2025-06-081-3/+3
|
* ci: Fix manifest formattingMohamed Bassem2025-06-081-8/+2
|
* feat(mobile): Add support for viewing PDFs (#1519)Code Love2025-06-084-33/+226
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat(mobile): add react-native-pdf dependency Add react-native-pdf package to enable PDF viewing functionality in the mobile app. This will be used to display PDF bookmarks directly within the app. Part of #597 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * feat(mobile): add PDF viewer component with authentication support Add a dedicated PDFViewer component that handles downloading and displaying PDF assets with proper authentication headers. Features include: - Download progress indication - Error handling with user-friendly messages - Automatic cleanup of temporary files - Proper memory management to prevent leaks - Content type validation for PDF files Part of #597 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * feat(mobile): integrate PDF viewing in bookmark detail view Integrate the PDFViewer component to display PDF bookmarks inline. When a bookmark is a PDF asset, it now renders using the dedicated PDF viewer instead of treating it as an image. Also adds external PDF opening functionality with platform-specific handling for iOS and Android, proper filename handling, and temporary file cleanup. Additionally fixes dark mode styling for the navigation header to ensure proper contrast in both light and dark themes. Part of #597 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * revert the open externally button * use react query for downloading the pdf --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: MohamedBassem <me@mbassem.com>
* fix(mobile): Move the delete button to the end in the bookmark menuMohamedBassem2025-06-071-11/+11
|
* feat(mobile): add reader/screenshot/archive view to bookmark preview (#1509)Simon Kenny2025-06-072-12/+288
| | | | | | | | | | | * feat(mobile): add reader view by default to bookmark detail view, retaining WebView fallback * feat(mobile): add dark mode support for mobile reader view * Add selectors for different views for bookmark link --------- Co-authored-by: MohamedBassem <me@mbassem.com>
* fix(build): karakeep-linux.sh fix use 'append' instead of 'file' for log (#1471)Chris2025-06-071-12/+25
| | | | | | - Noticed that using the log for StdOut and StdError would stop working under certain circumstances. - Using append is the correct setting so output can be read while tailing the logs
* feat(extension): add a keyboard shortcut to save page (#1532)Steven Conaway2025-06-072-24/+71
|
* feat(ui): Improve the look of the public bookmarks pageMohamed Bassem2025-06-074-31/+77
|
* fix: Use a new public list metadata endpoint for metadata generationMohamed Bassem2025-06-076-52/+126
|
* docs: Add asset APIs to the openapi specMohamed Bassem2025-06-074-24/+182
|
* fix(web): Smaller card titles in the user info pageMohamed Bassem2025-06-073-3/+3
|
* fix: preserve unsaved title changes when modifying bookmark tags in the edit ↵Adrian-Ryan Acala2025-06-072-6/+32
| | | | | | | | | | | | | | | | | dialog (#1515) * feat: preserve unsaved title changes when modifying bookmark tags Prevents loss of unsaved title edits when users interact with tag selectors or other UI elements. Adds useDialogFormReset hook to maintain form state consistency across component re-renders. Fixes #1339 * Revert unnecessary modifications --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* feat(web): Redesign the user settings pageMohamed Bassem2025-06-074-190/+302
|
* readme: Small readme fixesMohamed Bassem2025-06-072-5/+7
|
* fix(web): Drop the experimental icon from rss feedsMohamed Bassem2025-06-071-9/+0
|
* feat: Drop corepack dep in prod and allow running as non-root. Fixes #606Mohamed Bassem2025-06-072-7/+3
|
* i18n: Sync weblate translationsHosted Weblate2025-06-0227-189/+1107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: OpenAI <noreply-mt-openai@weblate.org> Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/ar/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/da/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/de/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/en_US/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/es/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/fi/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/fr/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/gl/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/hr/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/hu/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/it/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/ja/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/ko/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/nb_NO/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/nl/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/pl/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/pt/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/ru/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/sk/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/sl/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/sv/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/tr/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/uk/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/vi/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/karakeep/karakeep/zh_Hant/ Translation: Karakeep/Karakeep
* Merge remote-tracking branch 'weblate/main'Mohamed Bassem2025-06-010-0/+0
|\
* | feat: Maintain list structure when importing from netscape. Fixes #538Mohamed Bassem2025-06-012-45/+108
| |