Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AnythingLLM Chrome Extension #2066

Merged
merged 45 commits into from
Aug 27, 2024
Merged

AnythingLLM Chrome Extension #2066

merged 45 commits into from
Aug 27, 2024

Conversation

timothycarambat
Copy link
Member

@timothycarambat timothycarambat commented Aug 8, 2024

Pull Request Type

  • ✨ feat
  • πŸ› fix
  • ♻️ refactor
  • πŸ’„ style
  • πŸ”¨ chore
  • πŸ“ docs

Relevant Issues

resolves #xxx

What is in this change?

  • Create a chrome extension that allows users to send pages and selected text back to AnythingLLM
  • Users can upload selected text, embed selected text to a workspace, upload entire page content, or embed entire page content into a workspace
  • Automatically connects from AnythingLLM to the extension when creating a new extension API key in AnythingLLM browser extension settings by popping up and storing the keys in the chrome extension localstorage
  • When user copies the connection string, we also attempt to make the extension pop up and connect to AnythingLLM

Additional Information

Developer Validations

  • I ran yarn lint from the root of the repo & committed changes
  • Relevant documentation has been updated
  • I have tested my code functionality
  • Docker build succeeds locally

@timothycarambat timothycarambat changed the title initial commit for chrome extension AnythingLLM Chrome Extension Aug 8, 2024
@shatfield4 shatfield4 marked this pull request as ready for review August 23, 2024 00:32
Copy link
Member Author

@timothycarambat timothycarambat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are some multi-user considerations to make here to prevent inadvertent access or data to those who want to use the extension, but cannot. Rather than deploy something so limiting we should expand scope to support multi-user instances since single-user instances are the default way we support the extension right now.

This review has not touched the extension folder so once this has been addressed we can do another review for just the extension. So far, everything works great for single user.

Other considerations:

  • What happens when admin makes a key but intended to give it to someone else? It may have been pre-registered and overwritten their extension key!
    -> Solution could be a button post-create to "Auto register" or copy the key instead doing the auto-register post creation instantly.

frontend/src/models/browserExtensionApiKey.js Outdated Show resolved Hide resolved
server/models/browserExtensionApiKey.js Outdated Show resolved Hide resolved
server/models/browserExtensionApiKey.js Outdated Show resolved Hide resolved
server/endpoints/browserExtension.js Outdated Show resolved Hide resolved
server/endpoints/browserExtension.js Outdated Show resolved Hide resolved
@timothycarambat timothycarambat merged commit 29df483 into master Aug 27, 2024
2 checks passed
@timothycarambat timothycarambat deleted the chrome-extension branch August 27, 2024 21:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants