rcgit

/ karakeep
follow (on) | order: default date topo
Age Commit message Author Files +/-
feat: Allow configuring inline asset size threshold Mohamed Bassem 5 -31/+32
feat: Add admin maintenance job to migrate large inline HTML (#2071)
* Add admin maintenance job to migrate large inline HTML
* add cursor
* more fixes
Mohamed Bassem 8 -4/+218
fix(inferance): skip token slicing when content is already witin max length Mohamed Bassem 1 -0/+3
refactor: generalize tidy assets queue into admin maintenance (#2059)
* refactor: generalize admin maintenance queue
* more fixes
Mohamed Bassem 10 -159/+227
fix: update OpenAI API to use max_completion_tokens instead of max_tokens…
* fix: update OpenAI API to use max_completion_tokens instead of max_tokens
The OpenAI API has deprecated max_tokens in favor of max_completion_tokens
for newer models. This change updates both text and image model calls.
* feat: add support for max_completion_tokens in OpenAI inference configuration
Benjamin Michaelis 3 -2/+9
fix(restate): Fix priority for restate queue Mohamed Bassem 2 -7/+8
fix(restate): Ensure that the semaphore and idProvider services are ingress… Mohamed Bassem 2 -0/+6
feat: Add source field to track bookmark creation sources (#2037)
* feat: Add source field to track bookmark creation sources
Add a new 'source' field to the bookmarks table to track where bookmarks
were created from. Possible values: api, web, cli, mobile, singlefile, rss.
Changes:
- Add source field to bookmarks table schema
- Update Zod schemas to include source field
- Update tRPC createBookmark procedure to store source
- Update all callsites to pass appropriate source value:
  - api: Default to "api" if not provided
  - singlefile: Set to "singlefile"
  - rss: Set to "rss" in feedWorker
  - cli: Set to "cli"
  - mobile: Set to "mobile" in all mobile app bookmark creation
  - browser-extension: Set to "web"
  - web: Set to "web" in all web app bookmark creation
- Create migration file for database schema change
Fixes #2036
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
* feat: Add extension source type for browser extension
- Add 'extension' to bookmark source enum
- Update browser extension to use 'extension' instead of 'web'
Co-authored-by: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
* fix CI
* fix CI
* fix the migration file
* add import source
* make source nullish
---------
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
Mohamed Bassem 16 -12/+2650
feat: support passing multiple proxy values (#2039)
* feat: support passing multiple proxy values
* fix typo
* trim and filter
Mohamed Bassem 4 -36/+60
feat: Add service dependency checks in the server overview page Mohamed Bassem 7 -102/+404
fix(api): Return 200 when bookmark already exists instead of 200 Mohamed Bassem 4 -4/+31
tests: Add a test for the GET /bookmarks/bookmarkId/lists api Mohamed Bassem 1 -0/+48
fix(api): Document the API for getting lists of a bookmark. fixes #2030 Mohamed Bassem 8 -108/+268
fix: Correct grammatical errors in prompts (#2020)
Corrected "who's" to "whose" in buildImagePrompt and buildTextPrompt.
atsggx 1 -2/+2
fix: Disable idempotency keys for search Mohamed Bassem 1 -1/+2
feat: Restate-based queue plugin (#2011)
* WIP: Initial restate integration
* add retry
* add delay + idempotency
* implement concurrency limits
* add admin stats
* add todos
* add id provider
* handle onComplete failures
* add tests
* add pub key and fix logging
* add priorities
* fail call after retries
* more fixes
* fix retries left
* some refactoring
* fix package.json
* upgrade sdk
* some test cleanups
Mohamed Bassem 24 -13/+1049
feat: Revamp import experience (#2001)
* WIP: import v2
* remove new session button
* don't redirect after import
* store and lint to root list
* models + tests
* redesign the progress
* simplify the import session for ow
* drop status from session schema
* split the import session page
* i18n
* fix test
* remove pagination
* fix some colors in darkmode
* one last fix
* add privacy filter
* privacy check
* fix interactivity of import progress
* fix test
Mohamed Bassem 21 -37/+3618
feat: recursive list delete (#1989) Mohamed Bassem 5 -16/+437
fix: dont re-enqueue indexing for a bookmark already pending indexing Mohamed Bassem 1 -2/+5
feat: Add tag search and pagination (#1987)
* feat: Add tag search and use in the homepage
* use paginated query in the all tags view
* wire the load more buttons
* add skeleton to all tags page
* fix attachedby aggregation
* fix loading states
* fix hasNextPage
* use action buttons for load more buttons
* migrate the tags auto complete to the search api
* Migrate the tags editor to the new search API
* Replace tag merging dialog with tag auto completion
* Merge both search and list APIs
* fix tags.list
* add some tests for the endpoint
* add relevance based sorting
* change cursor
* update the REST API
* fix review comments
* more fixes
* fix lockfile
* i18n
* fix visible tags
Mohamed Bassem 32 -493/+1731
fix: optimize memory usage of tag listing Mohamed Bassem 2 -51/+137
fix: fix bundling liteque in the workers Mohamed Bassem 5 -7/+11
refactor: Move callsites to liteque to be behind a plugin Mohamed Bassem 39 -405/+707
feat: Regen api keys Mohamed Bassem 8 -29/+259
feat: Add Create Tag button to tags page (#1942)
* feat: add Create Tag button to tags page
- Added useCreateTag hook to shared-react/hooks/tags.ts
- Created CreateTagModal component for tag creation without bookmark attachment
- Added Create Tag button to AllTagsView component
- Added necessary translation keys for the new feature
Fixes #1937
Co-authored-by: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
* format
* localize toasts
---------
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
Mohamed Bassem 4 -1/+170
refactor: strongly type the search plugin interface Mohamed Bassem 3 -10/+41
feat(search): add title search qualifier (#1940)
* fix(search): include link titles in title matcher
* docs(search): add title qualifier
* docs: remove title qualifier from v0.27 guide
Mohamed Bassem 9 -2/+142
fix: Fix ranking of search results. fixes #1922 Mohamed Bassem 1 -0/+2
fix: fix migration failing when no user settings are set. fixes #1919 (#1920) Gavin Mogan 1 -6/+6
fix: fix 5xx on invalid api key Mohamed Bassem 1 -1/+5
release(sdk): Release the 0.27 sdk Mohamed Bassem 1 -1/+1
fix: fix tag flicker caused by tag sorting Mohamed Bassem 6 -50/+53
feat: Add cookie support for browser page access
* feat: Add cookie support for browser page access
Implemented cookie functionality for browser page access, including BROWSER_COOKIE_PATH configuration to specify the cookies JSON file path.
* fix the docs
---------
Co-authored-by: lizz <lizong1204@gmail.com>
Mohamed Bassem 3 -2/+94
feat(workers): add worker enable/disable lists (#1885) Mohamed Bassem 3 -44/+71
feat: add gif asset type support (#1876)
* feat: add gif asset type support
* skip inference for gis
---------
Co-authored-by: Mohamed Bassem <me@mbassem.com>
Drashi 2 -2/+10
refactor: Extract quota logic into its own class Mohamed Bassem 11 -102/+133
fix: Reduce polling interval on meilisearch tasks Mohamed Bassem 3 -47/+13
fix: Incremental polling interval for ongoing crawls Mohamed Bassem 5 -36/+40
refactor: Move highlights object into models Mohamed Bassem 2 -131/+188
refactor: Move feed object into models Mohamed Bassem 2 -94/+134
fix: Respect wal mode for the queue db Mohamed Bassem 5 -13/+15
fix: handle list with slashes in their names and truncate long list names.… Mohamed Bassem 12 -602/+1076
fix: fix move the admin route to the /v1 prefix Mohamed Bassem 1 -1/+1
feat(mobile): Retheme the mobile app (#1872)
* Add nativewindui
* migrate to nativewindui text
* Replace buttons with nativewindui buttons
* Use nativewindui search input
* fix the divider color
* More changes
* fix manage tag icon
* fix styling of bookmark card
* fix ios compilation
* fix search clear
* fix tag pill border color
* Store theme setting in app settings
* fix setting color appearance
* fix coloring of search input
* fix following system theme
* add a save button to info
* fix the grey colors on android
* fix icon active tint color
* drop the use of TextField
Mohamed Bassem 47 -433/+1991
fix(security): Add CSP policies on asset serving path MohamedBassem 2 -2/+20
fix: Dont attempt to remove uploaded tmp file if it's already removed MohamedBassem 1 -1/+7
fix: Sanitize uploaded file names. #1765 MohamedBassem 1 -1/+2
feat: Export prometheus metrics from the workers MohamedBassem 17 -34/+181
feat: generate a random prometheus token on startup MohamedBassem 4 -37/+11
feat: Support video uploads and attachments (#1847)
This commit allows the following mime types to be uploaded and attached
as video assets on bookmarks.
- video/mp4
- video/webm
- video/x-matroska
Evan Sharp 2 -1/+11
deps: Upgrade expo & nextjs to react 19 (#1565)
* Attempt to upgrade expo 53
* Attempt upgrade nextjs
* Fix a bunch of peer deps
* upgrade some docs deps
* fix typecheck
* update the shadcn calendar component
* more fixes
* more fixes
* revert ollama upgrade
* update react version to use carets
* remove react-select from landing
* fix the typescript error caused by customFetch
* upgrade the new grid user setting to nextjs 15
* mobile: enable react canary to support react 19.1
* upgrade react native menu
* fix navigation context error
Mohamed Bassem 29 -3336/+2403
docker: Update chrome to 124 Mohamed Bassem 5 -5/+5
fix: Trim trailing slashes from nextauth urls. Fixes #1799 MohamedBassem 1 -1/+5
fix: Get rid of the userSetting table completely MohamedBassem 5 -56/+2359
refactor: Move webhook, users and tags into models MohamedBassem 12 -1120/+1602
feat: Drop support for time bounded invitations MohamedBassem 8 -124/+2376
refactor: Refactor crawlerWorker to use tryCatch MohamedBassem 2 -123/+141
fix: Use prometheus histogram instead of summary MohamedBassem 1 -2/+5
fix: fix hidden env variable parse error. fixes #1790 MohamedBassem 1 -167/+164
fix(tests): Load plugins on API package entrypoint MohamedBassem 3 -0/+7
feat: Support NO_COLOR for logging. Fixes #1778 MohamedBassem 3 -3/+10
refactor: Extract meilisearch as a plugin MohamedBassem 26 -155/+524
chore: More turbo fixes MohamedBassem 28 -57/+107
fix: Ensure that all packages are ESM packages MohamedBassem 5 -0/+5
fix: Fix package boundary violations MohamedBassem 6 -5/+14
fix: Add karakeep_ prefix to hono's metrics Mohamed Bassem 1 -0/+1
deps: Upgrade vite Mohamed Bassem 18 -1064/+847
feat: Hide AI settings tab if inference is not configured. #1781 Mohamed Bassem 2 -22/+21
fix: Drop legacy container notice Mohamed Bassem 2 -22/+2
deps: Upgrade trpc Mohamed Bassem 6 -87/+54
fix: prometheus add karakeep prefix to metrics (#1780)
* add: prometheus karakeep prefix
* readd: comments
Tobias 1 -7/+7
fix: Remove bcrypt from the api key validation route Mohamed Bassem 6 -25/+568
feat: Add a max output tokens env variable Mohamed Bassem 3 -1/+6
fix(test): Fix subscription.test Mohamed Bassem 1 -0/+1
fix(stripe): Allow promotion codes Mohamed Bassem 1 -0/+1
release(sdk): Release the 0.26 sdk Mohamed Bassem 2 -4/+240
i18n: Add new translations Mohamed Bassem 1 -0/+5
fix: Run workers in prod without tsx. Fixes #1673 Mohamed Bassem 8 -93/+473
fix: Increase crawler max worker count in tests Mohamed Bassem 1 -0/+1
feat: Allow setting browserless crawling per user Mohamed Bassem 10 -6/+2399
feat: Allow enabling journaling mode on the db Mohamed Bassem 3 -18/+36
fix: Rename the proxy settings such that they don't interfer with other requests Mohamed Bassem 2 -9/+9
feat: adding search history #1541 (#1627)
* feat: adding search history
* fix popover should close when no matched history
* remove unnecessary react import
* replace current Input component with CommandInput for better UX
* add i18n for recent searches label
* fix bug
* refactor local storage logic to make code reusable
* using zod schema to validate search history and revert debounce change
* Consolidate some of the files
---------
Co-authored-by: Mohamed Bassem <me@mbassem.com>
lexafaxine 7 -47/+416
Revert "fix: Fix the types of the bookmark types in the db query"
This reverts commit 4ba3e8047a5b1f160169617187436c09e91662ec.
Mohamed Bassem 4 -27/+16
fix: Fix the types of the bookmark types in the db query Mohamed Bassem 4 -16/+27
feat: Add stripe based subscriptions Mohamed Bassem 18 -60/+4351
feat: Add delete account support Mohamed Bassem 6 -2/+252
fix: Drop auth failure logger Mohamed Bassem 4 -61/+11
feat: Add proper proxy support. fixes #1265 Mohamed Bassem 5 -9/+118
feat(api): Expose the update user API in the openapi specs Mohamed Bassem 6 -0/+302
fix: Add ratelimiting to bookmark recrawl and summarization Mohamed Bassem 1 -1/+15
deps: Upgrade drizzle Mohamed Bassem 5 -140/+475
fix(tests): Fix missing mock in trpc tests Mohamed Bassem 3 -4/+3
fix: Prioritize crawling user added links over bulk imports. fixes #1717 Mohamed Bassem 14 -91/+159
refactor: Move db interactions into the trpc routes Mohamed Bassem 4 -33/+66
feat: Support forget and reset password Mohamed Bassem 13 -47/+3170
feat: Add API ratelimits Mohamed Bassem 7 -13/+173
feat: Add invite user support Mohamed Bassem 18 -109/+3973
feat: Add support for email verification Mohamed Bassem 12 -157/+748
fix(api): Fix handling for CORS after the trpc move to hono. Fixes #1709 Mohamed Bassem 1 -0/+6
next