Enhanced ChatGPT Clone: Features Agents, MCP, DeepSeek, Anthropic, AWS, OpenAI, Responses API, Azure, Groq, o1, GPT-5, Mistral, OpenRouter, Vertex AI, Gemini, Artifacts, AI model switching, message search, Code Interpreter, langchain, DALL-E-3, OpenAPI Actions, Functions, Secure Multi-User Auth, Presets, open-source for self-hosting. Active. https://librechat.ai/
Find a file
Marco Beretta f19f5dca8e
🔥🚀 feat: CDN (Firebase) & feat: account section (#1438)
* localization + api-endpoint

* docs: added firebase documentation

* chore: icons

* chore: SettingsTabs

* feat: account pannel; fix: gear icons

* docs: position update

* feat: firebase

* feat: plugin support

* route

* fixed bugs with firebase and moved a lot of files

* chore(DALLE3): using UUID v4

* feat: support for social strategies; moved '/images' path

* fix: data ignored

* gitignore update

* docs: update firebase guide

* refactor: Firebase
- use singleton pattern for firebase initialization, initially on server start
- reorganize imports, move firebase specific files to own service under Files
- rename modules to remove 'avatar' redundancy
- fix imports based on changes

* ci(DALLE/DALLE3): fix tests to use logger and new expected outputs, add firebase tests

* refactor(loadToolWithAuth): pass userId to tool as field

* feat(images/parse): feat: Add URL Image Basename Extraction

Implement a new module to extract the basename of an image from a given URL. This addition includes the  function, which parses the URL and retrieves the basename using the Node.js 'url' and 'path' modules. The function is documented with JSDoc comments for better maintainability and understanding. This feature enhances the application's ability to handle and process image URLs efficiently.

* refactor(addImages): function to use a more specific regular expression for observedImagePath based on the generated image markdown standard across the app

* refactor(DALLE/DALLE3): utilize `getImageBasename` and `this.userId`; fix: pass correct image path to firebase url helper

* fix(addImages): make more general to match any image markdown descriptor

* fix(parse/getImageBasename): test result of this function for an actual image basename

* ci(DALLE3): mock getImageBasename

* refactor(AuthContext): use Recoil atom state for user

* feat: useUploadAvatarMutation, react-query hook for avatar upload

* fix(Toast): stack z-order of Toast over all components (1000)

* refactor(showToast): add optional status field to avoid importing NotificationSeverity on each use of the function

* refactor(routes/avatar): remove unnecessary get route, get userId from req.user.id, require auth on POST request

* chore(uploadAvatar): TODO: remove direct use of Model, `User`

* fix(client): fix Spinner imports

* refactor(Avatar): use react-query hook, Toast, remove unnecessary states, add optimistic UI to upload

* fix(avatar/localStrategy): correctly save local profile picture and cache bust for immediate rendering; fix: firebase init info message (only show once)

* fix: use `includes` instead of `endsWith` for checking manual query of avatar image path in case more queries are appended (as is done in avatar/localStrategy)

---------

Co-authored-by: Danny Avila <messagedaniel@protonmail.com>
2023-12-29 21:42:19 -05:00
.devcontainer chore: Clean up the devcontainer files (#1317) 2023-12-10 09:49:21 -05:00
.github 🪪mkdocs: social cards (#1428) 2023-12-28 17:10:06 -05:00
.husky chore: move files out of root to declutter 2023-09-06 14:00:36 -04:00
api 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
client 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
config 🔄 refactor: Consolidate Ask/Edit Controllers (#1365) 2023-12-15 15:47:40 -05:00
docs 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
e2e style: update graphics (#1138) 2023-11-16 08:42:03 -05:00
packages/data-provider 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
.dockerignore chore: Update docker, Minor Styling fix (#528) 2023-06-17 11:38:48 -04:00
.env.example 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
.eslintrc.js 🔧 fix: Correct Properties Passed to getResponseSender, Catch OpenAI Errors (#1244) 2023-11-29 13:40:16 -05:00
.gitignore 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
bun.lockb chore: remove jose as Bun now supports JWT 🍞 (#1167) 2023-11-12 00:44:46 -05:00
deploy-compose.yml feat: deploy-compose NGINX volume mapping, add image removal to update script (#1211) 2023-11-22 23:35:08 -05:00
docker-compose.override.yml.example 🧹📚 docs: refactor and clean up (#1392) 2023-12-22 08:36:42 -05:00
docker-compose.yml update: docker-compose.yaml 🐋 (#1341) 2023-12-15 02:41:33 -05:00
Dockerfile refactor: address potential issues with deploy-compose.yml (#1220) 2023-11-25 16:34:51 -05:00
Dockerfile.multi refactor: Use librechat-data-provider app-wide 🔄 (#1326) 2023-12-11 14:48:40 -05:00
index.html feat: allow FWA (#1440) 2023-12-29 17:28:07 -05:00
LICENSE doc fix: license ⚖️ (#1171) 2023-11-12 20:49:41 -05:00
mkdocs.yml 🪪mkdocs: social cards (#1428) 2023-12-28 17:10:06 -05:00
package-lock.json 🔥🚀 feat: CDN (Firebase) & feat: account section (#1438) 2023-12-29 21:42:19 -05:00
package.json Release v0.6.5 (#1391) 2023-12-19 01:09:42 -05:00
prettier.config.js refactor: Settings/Presets UI Restructure, convert many files to TS (#740) 2023-08-04 13:56:44 -04:00
README.md 🧹📚 docs: refactor and clean up (#1392) 2023-12-22 08:36:42 -05:00

LibreChat

📃 Features

  • 🖥️ UI matching ChatGPT, including Dark mode, Streaming, and 11-2023 updates
  • 💬 Multimodal Chat:
    • Upload and analyze images with GPT-4 and Gemini Vision 📸
    • More filetypes and Assistants API integration in Active Development 🚧
  • 🌎 Multilingual UI:
    • English, 中文, Deutsch, Español, Français, Italiano, Polski, Português Brasileiro,
    • Русский, 日本語, Svenska, 한국어, Tiếng Việt, 繁體中文, العربية, Türkçe, Nederlands
  • 🤖 AI model selection: OpenAI API, Azure, BingAI, ChatGPT, Google Vertex AI, Anthropic (Claude), Plugins
  • 💾 Create, Save, & Share Custom Presets
  • 🔄 Edit, Resubmit, and Continue messages with conversation branching
  • 📤 Export conversations as screenshots, markdown, text, json.
  • 🔍 Search all messages/conversations
  • 🔌 Plugins, including web access, image generation with DALL-E-3 and more
  • 👥 Multi-User, Secure Authentication with Moderation and Token spend tools
  • ⚙️ Configure Proxy, Reverse Proxy, Docker, many Deployment options, and completely Open-Source

For a thorough review of our features, see our docs here 📚

🪶 All-In-One AI Conversations with LibreChat

LibreChat brings together the future of assistant AIs with the revolutionary technology of OpenAI's ChatGPT. Celebrating the original styling, LibreChat gives you the ability to integrate multiple AI models. It also integrates and enhances original client features such as conversation and message search, prompt templates and plugins.

With LibreChat, you no longer need to opt for ChatGPT Plus and can instead use free or pay-per-call APIs. We welcome contributions, cloning, and forking to enhance the capabilities of this advanced chatbot platform.

Watch the video Click on the thumbnail to open the video☝️


📚 Documentation

For more information on how to use our advanced features, install and configure our software, and access our guidelines and tutorials, please check out our documentation at docs.librechat.ai


📝 Changelog

Keep up with the latest updates by visiting the releases page - Releases

⚠️ Breaking Changes Please consult the breaking changes before updating.


Star History

Star History Chart

Contributions

Contributions, suggestions, bug reports and fixes are welcome!

For new features, components, or extensions, please open an issue and discuss before sending a PR.


💖 This project exists in its current state thanks to all the people who contribute