aboutsummaryrefslogtreecommitdiffstats
path: root/apps (follow)
Commit message (Collapse)AuthorAgeFilesLines
* feat: Add a new timezone user settingMohamed Bassem2025-07-063-3/+94
|
* fix: Fix i18n in the new stats pageMohamed Bassem2025-07-063-37/+108
|
* feat: Add per user storage quotaMohamed Bassem2025-07-066-75/+216
|
* feat: Add new user stats page. Fixes #1523Mohamed Bassem2025-07-063-0/+504
|
* feat(workers): Allow custmoizing max parallelism for a bunch of workers. ↵Mohamed Bassem2025-07-056-6/+8
| | | | Fixes #724
* fix(workers): A more lenient JSON parsing for LLM responses. Fixes #1267Mohamed Bassem2025-07-041-1/+39
|
* refactor: Move the health endpoint to hono as wellMohamed Bassem2025-07-041-8/+0
|
* refactor: Move the trpc endpoint to honoMohamed Bassem2025-07-041-22/+0
|
* feat: Add per user bookmark count quotaMohamed Bassem2025-07-043-160/+197
|
* fix(web): Add icons to preview selectorsMohamed Bassem2025-07-041-4/+19
|
* fix(mcp): add empty params object (#1697)Baitazar2025-07-041-1/+3
|
* 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-223-13/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* feat(workers): migrate from puppeteer to playwright (#1296)Mael2025-06-222-34/+39
| | | | | | | | | | | | | | | | | | | | | | | * 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
|
* chore: More oxlint changesMohamed Bassem2025-06-2211-36/+13
|
* chore: migrate away from eslint to oxlint (#1642)xuatz2025-06-2236-96/+252
| | | | | | | * chore: migrate away from eslint to oxlint * revert turbo task name lint * it seems like we can remove the seemingly default globals
* fix: Fix webhook not firing on deletion. Fixes #1613Mohamed Bassem2025-06-211-18/+19
|
* 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: Fix oauth creation failure due to missing UserSettings table. Fixes #1583Mohamed Bassem2025-06-212-9/+26
|
* 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.
* i18n: Add Greek translation (#1564)apo-mak2025-06-151-0/+481
| | | | | * Add Greek translation * pnpm format:fix
* release(cli): Bump CLI version to 0.25.0Mohamed Bassem2025-06-151-1/+1
|
* fix: Fix UI infinite recursion by upgrading radix packagesMohamed Bassem2025-06-083-25/+25
|
* deps: upgrade to pnpm@9.15.9 (#1544)xuatz2025-06-084-29/+29
| | | | | | | | | | | | | * 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>
* 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-083-2/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* 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-073-25/+66
|
* fix: Use a new public list metadata endpoint for metadata generationMohamed Bassem2025-06-072-3/+14
|
* 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
|
* fix(web): Drop the experimental icon from rss feedsMohamed Bassem2025-06-071-9/+0
|
* 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
* feat: Maintain list structure when importing from netscape. Fixes #538Mohamed Bassem2025-06-012-45/+108
|
* feat: Allow specifying the overwrite mode for singlefile archives. Fixes #1125Mohamed Bassem2025-06-011-3/+3
|
* feat: Add support for public lists (#1511)Mohamed Bassem2025-06-0113-78/+563
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * WIP: public lists * Drop viewing modes * Add the public endpoint for assets * regen the openapi spec * proper handling for different asset types * Add num bookmarks and a no bookmark banner * Correctly set page title * Add a not-found page * merge the RSS and public list endpoints * Add e2e tests for the public endpoints * Redesign the share list modal * Make NEXTAUTH_SECRET not required * propery render text bookmarks * rebase migration * fix public token tests * Add more tests
* feat: add user customisable default archive display behaviour (#1505)xuatz2025-06-0110-20/+157
| | | | | | | | | | | | | | | | | * fix typo * implementation * bug fix and refactoring * Use nuqs for searchParam management * remove the todo about the tests * fix tests --------- Co-authored-by: Mohamed Bassem <me@mbassem.com>
* feat(mobile): Add PDF support to share extension (#1494)Code Love2025-06-011-2/+4
| | | | | | | | | | | | | | Enable the mobile app to receive PDF files from other apps via the iOS/Android share sheet. PDFs can now be shared from Files app, email clients, and other apps that support document sharing. - Add PDF UTI (com.adobe.pdf) to iOS share extension activation rules - Add application/pdf to Android intent filters Known limitation: PDFs viewed in Safari cannot be shared directly as Safari shares the PDF URL rather than the file itself. Users can share the URL instead, and Karakeep will fetch the PDF from that URL. Addresses issue #284 for file attachment support
* feat: Generate RSS feeds from lists (#1507)Mohamed Bassem2025-05-316-33/+205
| | | | | | | | | | | * refactor: Move bookmark utils from shared-react to shared * Expose RSS feeds for lists * Add e2e tests * Slightly improve the look of the share dialog * allow specifying a limit in the rss endpoint