Commit Graph

452 Commits

Author SHA1 Message Date
Matthieu Jacq
d1b0c26da8
feat: 🖼️ new homepage background (#1395)
## 🔗 Relates to
- Epic: #1232 
- Issue: #1394 

## 🍿 Demo


https://github.com/StanGirard/quivr/assets/67386567/ff3f9e4f-48df-42ab-9ed4-4dd59aca7ba9
2023-10-17 10:57:27 +02:00
Mamadou DICKO
ea227df30e
feat(onboarding): add suggested questions answer (#1390)
https://github.com/StanGirard/quivr/assets/63923024/08554dd5-2765-436a-b900-48b38d582f6c



https://github.com/StanGirard/quivr/issues/1389
2023-10-12 09:39:56 +02:00
Matthieu Jacq
7e88032dc9
feat: new homepage header (#1382)
## Relates to

Epic: #1232 
Issue: #1377 

## 🚩 Feature flag

Use in growthbook the flag: `new-homepage-activated` (boolean)

## 📷 Screenshots

### 🖥️ Desktop

<img width="1059" alt="image"
src="https://github.com/StanGirard/quivr/assets/67386567/e0bae17a-bb94-4ba8-8dc3-a79d18f5d933">

### 📱 Mobile

<img width="377" alt="image"
src="https://github.com/StanGirard/quivr/assets/67386567/af8398dc-d9df-4034-a329-49aae3b2bf45">

<img width="375" alt="image"
src="https://github.com/StanGirard/quivr/assets/67386567/c5d53051-939e-49df-9c0a-212eff576b34">

---------

Co-authored-by: Zineb El Bachiri <100568984+gozineb@users.noreply.github.com>
2023-10-11 18:36:16 +02:00
Mamadou DICKO
b9172b7442
feat: track onboarding events (#1388)
https://github.com/StanGirard/quivr/issues/1386
2023-10-11 15:56:28 +02:00
Mamadou DICKO
1baf9ee5b0
feat: remove user onboarding on complete (#1387)
https://github.com/StanGirard/quivr/issues/1384


https://github.com/StanGirard/quivr/assets/63923024/ac05456d-2817-4196-8afc-51b34a4d8c5f
2023-10-11 09:46:57 +02:00
Mamadou DICKO
58ea481910
feat: finish onboarding step on first upload or crawl (#1373)
https://github.com/StanGirard/quivr/issues/1372



https://github.com/StanGirard/quivr/assets/63923024/ecf92424-bcc2-4e4d-ad4d-c569ab1c7203
2023-10-10 17:14:48 +02:00
Matthieu Jacq
5bd53ffc84
refactor: Enable linting on login+signup page and hooks (#1369)
#1366
2023-10-10 13:27:43 +02:00
Mamadou DICKO
28a6dc169a
feat: handle suggestion click (#1368)
https://github.com/StanGirard/quivr/issues/1367

This is the first part of the system. We'll update how we fetch this
'assistant' response soon


https://github.com/StanGirard/quivr/assets/63923024/92029ba2-ecd2-47a2-be67-2be13f50ea73
2023-10-10 09:46:56 +02:00
Mamadou DICKO
9293b7d782
feat: add Welcome chat (#1365)
https://github.com/StanGirard/quivr/issues/1361


https://github.com/StanGirard/quivr/assets/63923024/cc4b1c0a-363a-49f3-8306-181151554b34

---------

Co-authored-by: Zineb El Bachiri <100568984+gozineb@users.noreply.github.com>
2023-10-10 09:27:35 +02:00
Matthieu Jacq
2c7d48cf4e
feat: configure CSP for self-hosting and multiple ports in dev mode (#1364)
Closes #1358 
Closes #1359

⚠️ Need to update the preview and prod environment with a
"NEXT_PUBLIC_FRONTEND_URL" variable before merging.
2023-10-09 17:02:15 +02:00
Mamadou DICKO
77e135fb5b
test: add chat e2e tests (#1344)
- Brain selection
- Chat deletion
- Unplug chat
- Plug chat
2023-10-09 15:23:24 +02:00
Mamadou DICKO
f13f08c5c5
feat: update onboarding steps (#1337)
https://github.com/StanGirard/quivr/issues/1331


https://github.com/StanGirard/quivr/assets/63923024/eef62e2a-3c7c-4b08-b69c-2ba4d3b4b1be
2023-10-05 18:03:46 +02:00
Nick Guernsey
253e866a86
feat: enhance user page UI (#1319)
# Description

Hope ya'll don't mind, I updated the User Profile's UI to be a bit more
readable. Kept the design neutral to not impose styles.

I also kept the original toggle buttons for Theme and Language in case
we still want to use those in other places in the app, where a select
menu isn't necessary.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):


https://github.com/StanGirard/quivr/assets/64866427/d0320852-ece1-4002-a180-0005df132e71


https://github.com/StanGirard/quivr/assets/64866427/be3c67ec-8d42-44f9-8131-35a70aec20ef

---------

Co-authored-by: Zineb El Bachiri <100568984+gozineb@users.noreply.github.com>
Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2023-10-05 17:50:02 +02:00
Matthieu Jacq
d0e363e66e
feat: enable CSP in all environments (local/preview/prod) (#1334)
# Description

Enable CSP in all environments (local/preview/prod).

Relies on NEXT_PUBLIC_ENV env variable, which should be
`'local'|'preview'|'prod'`

# Comparison of old and new CSP values (tested locally)

## Before

### CSP (for prod only)

```
default-src 'self' https://fonts.googleapis.com https://xxx.supabase.co https://api.june.so https://www.quivr.app/; connect-src 'self' https://xxx.supabase.co http://localhost:5050 https://api.june.so https://api.openai.com https://cdn.growthbook.io https://vitals.vercel-insights.com/v1/vitals; img-src 'self' https://www.gravatar.com data:; media-src 'self' https://user-images.githubusercontent.com https://www.quivr.app/ https://quivr-cms.s3.eu-west-3.amazonaws.com; script-src 'unsafe-inline' 'unsafe-eval' https://va.vercel-scripts.com/ https://www.quivr.app/ https://www.google-analytics.com/; frame-ancestors 'none'; style-src 'unsafe-inline' https://www.quivr.app/;
```

## After

### Prod CSP (iso with before)

```
default-src 'self' https://fonts.googleapis.com https://xxx.supabase.co https://api.june.so https://www.quivr.app/; connect-src 'self' https://xxx.supabase.co http://localhost:5050 https://api.june.so https://api.openai.com https://cdn.growthbook.io https://vitals.vercel-insights.com/v1/vitals; img-src 'self' https://www.gravatar.com data:; media-src 'self' https://user-images.githubusercontent.com https://www.quivr.app/ https://quivr-cms.s3.eu-west-3.amazonaws.com; script-src 'unsafe-inline' 'unsafe-eval' https://va.vercel-scripts.com/ https://www.quivr.app/ https://www.google-analytics.com/; frame-ancestors 'none'; style-src 'unsafe-inline' https://www.quivr.app/;
```

### Preview CSP

```
default-src 'self' https://fonts.googleapis.com https://xxx.supabase.co https://api.june.so https://preview.quivr.app/; connect-src 'self' https://xxx.supabase.co http://localhost:5050 https://api.june.so https://api.openai.com https://cdn.growthbook.io https://vitals.vercel-insights.com/v1/vitals; img-src 'self' https://www.gravatar.com data:; media-src 'self' https://user-images.githubusercontent.com https://www.quivr.app/ https://quivr-cms.s3.eu-west-3.amazonaws.com; script-src 'unsafe-inline' 'unsafe-eval' https://va.vercel-scripts.com/ https://preview.quivr.app/ https://www.google-analytics.com/; frame-ancestors 'none'; style-src 'unsafe-inline' https://preview.quivr.app/;
```

### Local CSP

```
default-src 'self' https://fonts.googleapis.com https://xxx.supabase.co https://api.june.so http://localhost:3000 http://localhost:3001; connect-src 'self' https://xxx.supabase.co http://localhost:5050 https://api.june.so https://api.openai.com https://cdn.growthbook.io https://vitals.vercel-insights.com/v1/vitals; img-src 'self' https://www.gravatar.com data:; media-src 'self' https://user-images.githubusercontent.com https://www.quivr.app/ https://quivr-cms.s3.eu-west-3.amazonaws.com; script-src 'unsafe-inline' 'unsafe-eval' https://va.vercel-scripts.com/ http://localhost:3000 http://localhost:3001 https://www.google-analytics.com/; frame-ancestors 'none'; style-src 'unsafe-inline' http://localhost:3000 http://localhost:3001;
```

# 🧪 External checks

Syntax checked with https://csp-evaluator.withgoogle.com/ (for the 3
environments).

---------

Co-authored-by: gozineb <zinebe@theodo.fr>
2023-10-05 17:37:25 +02:00
Mamadou DICKO
28ef515458
feat: update onboarding controller and fix typo (#1333)
<img width="525" alt="Screenshot 2023-10-05 at 10 55 29"
src="https://github.com/StanGirard/quivr/assets/63923024/d7a4e7ef-e73f-46d0-8499-06c5e951f64a">


<img width="1207" alt="Screenshot 2023-10-05 at 10 49 45"
src="https://github.com/StanGirard/quivr/assets/63923024/50eba38a-b2cb-4e7d-82b1-ceca60abdad4">

https://github.com/StanGirard/quivr/issues/1328
2023-10-05 11:31:26 +02:00
Matthieu Jacq
f030db6952
feat: restructure the sidebar of the brains management page (#1325)
* 🧩 Possibility to chose which buttons to display in the sidebar

* Button "Back to chat"

* 💄 Remove the frame around the brains library page

* Give a size to the image in the profile button (for performance)

* Optional prop showButtons in the sidebar

* remove duration on waitFor and set sidebar animation duration to 200ms
2023-10-04 18:12:27 +02:00
Mamadou DICKO
85eba3da70
feat: add onboarding step 3 (#1324)
* feat: add OnboardingContext

* feat: add Step3 boilerplate

* feat: activate step3

* feat: add <Step3/> content

* feat: add shouldStream guard on useStreamText
2023-10-04 16:26:56 +02:00
Matthieu Jacq
945178de39
fix: 🐛📱 height now matches mobile height (#1323) 2023-10-04 12:04:57 +02:00
Mamadou DICKO
bf5b7553d5
fix: wrap parsing with try catch (#1321) 2023-10-04 11:26:25 +02:00
Mamadou DICKO
bf7cdae4ab
feat(onboarding): add questions suggestions layout (#1318)
* refactor: update ChatInput

* feat(chat): add questions suggestion layout
2023-10-03 18:34:28 +02:00
Mamadou DICKO
6d0bc9b6ac
feat(onboarding): add step 2 (#1314)
* refactor: move onboarding step1 to components folder

* feat(onboarding): add on step2
2023-10-03 18:26:40 +02:00
Matthieu Jacq
403cdaa354
fix: remove undesired outlines around divs (#1316) 2023-10-03 18:03:05 +02:00
Matthieu Jacq
a61a18f4f4
fix: replace next/image's layout deprecated attribute (#1313) 2023-10-03 16:52:31 +02:00
Matthieu Jacq
ed358c7fa3
refactor: ♻️ ContentSecurityPolicy as an object (#1312)
* ♻️  ContentSecurityPolicy as an object

* CSP: Remove redundant operation
2023-10-03 16:16:02 +02:00
Matthieu Jacq
958993a960
feat: ↕️ maximize brain management page (#1308) 2023-10-03 14:56:31 +02:00
Matthieu Jacq
18f76a5341
feat: ↕️ Maximise chat window (#1301)
* 🔥 Remove Chat page intro (component and translations)

* Centered full-size chat window (partial)

* fix: gray background when adding a document

* chat window: responsive padding

* cleaner navbar display condition
2023-10-03 12:18:49 +02:00
Mamadou DICKO
808b8ffa12
feat: update chat list on new chat first message (#1305)
* feat: refecth chats list on first message

* style: change chat items colors
2023-10-03 12:08:14 +02:00
Mamadou DICKO
63e90a317c
feat: add onboarding first step (#1303)
* refactor: split <MessageRow /> into small components

* feat: add onboarding page first step
2023-10-03 11:25:16 +02:00
Mamadou DICKO
64fbd79b75
feat: allow users to turn private brain to public (#1300) 2023-10-02 17:04:05 +02:00
Matthieu Jacq
1e0c0c4a54
fix: 🐛 Sidebar content should not hide the sidebar footer (#1298) 2023-10-02 15:36:40 +02:00
Matthieu Jacq
c140b9c517
feat: responsive sidebar (#1279)
* 💄 The chat sidebar takes the full height

* 💄 redesign of the action section and buttons in the sidebar

*  Sidebar header

* ♻️  Refact sidebar filesystem structure

* ♻️  Create a separate reusable sidebar component

* 🐛 Fix sidebar quick open/close on mobile

* 💄 New open/close sidebar button

* fix: error message + sidebar height issue + mobile width incoherence

* ♻️  Rename and move the sidebar footer

* 💄 sidebar toggle: color on hover

* apply sidebar to brains-management

* 💄 Larger sidebar

* 🚨Pass existing tests

*  Test the sidebar

*  Test the open and close buttons in the sidebar
2023-10-02 14:42:23 +02:00
Nick Guernsey
92494aa6c6
fix(Select): fix JSX typo (#1292)
* fix: fixed clipRule typo

* fix: fill-rule typo
2023-10-02 09:33:18 +02:00
Nick Guernsey
522f2cd79f
fix: prevent fetch when user is not logged in (#1293) 2023-10-02 09:27:17 +02:00
Stan Girard
ead1ae86fc
feat(user_settings): increased (#1291) 2023-09-30 22:32:53 +02:00
Mamadou DICKO
a1e6d400b2
test: add e2e for crawling (#1288)
* feat: update translations

* fix: update createBrain tests

* test: add crawl e2e test
2023-09-29 13:15:37 +02:00
Mamadou DICKO
36fd146fed
feat: improve app ux (#1281)
* style: make FeedItemIcon the same size

* feat: update feed component brain selector label position

* style: change purple to 600

* feat: improve already dropped file message ux

* feat: autoclose feedinput on chatId change

* style: change chat colors

* feat: prevent linebreak in knowledge to upload row

* feat(textFIeld): avoid textfield content going under icon

* feat(knowledgeToUpload): add tooltip on urls and files name

* feat(feedBrain): auto scroll on messages when feed modal get opened

* style: update colors

* refactor: rename uploadCard to FeedCard
2023-09-29 10:24:31 +02:00
Zineb El Bachiri
c215284fe9
🚑 return to old CSP syntax (#1282) 2023-09-28 18:24:31 +02:00
Zineb El Bachiri
b64fc044c4
feat: knowledge tab add button (#1277)
* 🚧 🌐 knowledge traductions

* 🔥 replace useKnowledge hook

*  AddKnowledge in knowledge  tab

* 🚧 extract feedBrain in chat hook

* ♻️ use feedBrain method as a prop in KnowledgeToFeedInput

*  custom feedBrain for chat and brain management

*  add loader when deleting

* 🚑 remove chat after auto creation for each feed action

* 🚚 rename KnowledgeProvider into KnowledgeToFeedProvider
2023-09-28 15:39:30 +02:00
Mamadou DICKO
2226eef06b
feat(chatPage): update ui add new feed component (#1275)
* feat(brains): remove unrelevent buttons on management page

* feat: improve feed input ux

* feat: update brain knowledge context add knowledge to feed logic

* feat: allow to drop files everywhere in the chat section

* style: add slide in effect when opening feed card

* test(chatPage): fix failing tests
2023-09-28 11:29:55 +02:00
Matthieu Jacq
b6f38f7aff
fix: 🔒️ add gravatar.com to the content security policy (#1273)
* fix: 🔒️ add gravatar.com to the content security policy

* 🎨 cleaner ContentSecurityPolicy string definition
2023-09-27 15:57:44 +02:00
Mamadou DICKO
ef78dec810
feat: improve knowledge feed process ux (#1274)
* style(deleteBrainModal): reduce buttons space

* refactor: add KnowledgeToFeedInput

* feat: update translations

* feat: update knowledge feed component

* style: reduce knowledge to upload displayer size

* feat: move KnowledgeToFeedInput to @lib

* refactor: rename useSelectedChatPage to useChatNotificationsSync

* feat: change chatPage bg to gray when feed card is opened

* style: change feed process submit button bg to purple
2023-09-27 15:39:04 +02:00
Matthieu Jacq
7470d389a7
feat: 👤 Implement gravatar (#1268)
*  Implement gravatar

* ♻️  refact gravatar url generation with a custom hook

* review: do not add a default value to the email if undefined
2023-09-27 14:41:08 +02:00
Mamadou DICKO
ef2bada3a5
style: improve ui (#1263)
* feat: align brain acces status change confirmation buttons

* style(brainManagement): reduce remove/unsubscribe button margin

* style(brainManagement): align confirmationModal buttons

* feat: update modal display status logic

* feat(BrainsLibrary): add brains management button

* style: improve public brain item ui

* style: make brain library responsive

* feat: auto close subscription modal on subscribe

* feat: add empty brain description message

* test: fix failing linter tests
2023-09-27 09:50:27 +02:00
Rahil Ahmad
a9fdbd51e4
FIX #1220 UX Upload improvement (#1259)
Co-authored-by: Mamadou DICKO <63923024+mamadoudicko@users.noreply.github.com>
Co-authored-by: Zineb El Bachiri <100568984+gozineb@users.noreply.github.com>
2023-09-27 09:22:22 +02:00
Mamadou DICKO
c8f045dfad
feat: save last chat config and make it default one (#1266)
* fix(RBAC): skip validation for unplug

* feat(chatSettings): set last config as default

---------

Co-authored-by: Zineb El Bachiri <100568984+gozineb@users.noreply.github.com>
2023-09-26 18:41:02 +02:00
Matthieu Jacq
da6d5b698d
feat(nav): 🚚 Move Brain and User buttons to the sidebar in the chat (#1262)
* 🚚 Move Brain and User buttons to the sidebar in the chat

* 🚨 fix linter warnings

* 🚚 Move sidebar actions to a dedicated component

*  Fix failing tests

* 💄 Style sidebar buttons

* 🚚 move nav components under ChatsListItem and User components accordingly

* Display email in the user button

* ♻️  use the UserData hook in the UserPage component

* Do not display the top navbar on the chat page

* ⚰️ remove the social icons at the bottom of the chat sidebar

* ️UserButton: get email from the Supabase context instead of a call api

* 🚨 Fix unit-tests

* 💄 Crop email in UserButton if necessary

* UserButton: display empty string if the email is undefined
2023-09-26 18:26:19 +02:00
Mamadou DICKO
a4a2d769b3
feat: allow setting public brain status to private (#1258)
* feat: refetch brains list on when new brain is added

* feat: update BrainConfig type

* feat: update useSettingsTab add usebrainFormState and useSettings tab

* feat: add <PrivateAccessConfirmationModal/> modal

* feat: update translations

* feat: handle brain status change to private

* feat: validate chat access

* test: fix failaing tests and remove deprecated
2023-09-26 10:35:52 +02:00
Riccardo Linares
4b88c89814
Update next.config.js (#1251)
Removing typo in next.confing.js
2023-09-26 09:36:53 +02:00
Matthieu Jacq
4acdb0ae55
feat(user): 🚚 Move language and theme buttons to the User page (#1256)
* feat(user): 🚚 Move language and theme buttons in the User page

* ⚰️  Remove obsolete test (DocumentData.test.ts)

* fix(user_settings): ⚰️  remove settings header
2023-09-26 09:29:30 +02:00
Mamadou DICKO
1643b54b7b
feat: allow user to unsubscribe from a brain (#1254)
* feat: update translations

* feat: add <DeleteOrUnsubscribeConfirmationModal />

* test(DeleteOrUnsubscribeConfirmationModal): update tests

* feat: redirect to /brains-management on invalid brain id

* refactor: move delete_brain_user to delete_brain_users

* feat: add /POST '/brains/{brain_id}/subscribe'

* feat: handle public brain unsubscription
2023-09-25 14:22:59 +02:00
Stan Girard
5e2d8a6b59 fix(preview): import 2023-09-22 18:15:39 +02:00
Stan Girard
c1ec7b8944
fix(preview): fixed a few bugs unchecked (#1247) 2023-09-22 18:04:45 +02:00
Zineb El Bachiri
d2b4ef4aff
feat: knowledge tab list (#1222)
*  get all knowledge utils

*  add remove knowledge and update router

*  new knowledge provider

* 🚨 remove eslint -disable

*  new useKnowledgeApi

*  set up KnowledgeItem

*  add KnowledgeTable component in knowledge tab

* 🔥 remove DocumentData replaced by KnowledgeItem

* 🐛 fix weird characters instead of '/'

* 💄 truncate knowledge name

*  add DownloadUploadedKnowledge component

* ⚰️ unused code

* 🏷️ introduce UploadedKnowledge and CrawledKnowledge types

* 💄 remove thread

* 💄 bin for delete knowledge

* 🌐 update wording for knowledge tab

* 🔇 remove logs and comments
2023-09-22 16:06:04 +02:00
Mamadou DICKO
48bdbbb3e9
feat(publicBrain): disable subscribe button when already subscribed and refetch brains list (#1246)
* feat(brainSettings): add getBrainPermissions

* feat(publicBrain): disable subscription button when already subscribed

* feat(publicBrains): refecth brains list onSubscribe
2023-09-22 12:37:50 +02:00
Mamadou DICKO
2c9a0c1ed2
feat: activate public brain subscription (#1241)
* feat: add public brain details modal

* feat(brain): add subscription route

* feat: activate subscription button

* feat: add last_update column to brain table

* feat: display last update on public brain details page

* feat: change RBAC rule for public brains

* feat: maintain brain last_update time
2023-09-22 11:44:09 +02:00
Stan Girard
f1804dec5c fix: 🐛 blog
too many lines
2023-09-21 22:02:50 +02:00
Stan Girard
65de6839fc docs(blog): updated 2023-09-21 21:14:01 +02:00
Stan Girard
cdc097901e fix(cms): changed url 2023-09-21 14:31:07 +02:00
Stan Girard
f2937a7eee feat(cms): added images 2023-09-21 14:23:22 +02:00
Mamadou DICKO
8172704b61
feat: add public brain page (#1230)
* feat: add brain library button

* feat(Field): add inputClassName key

* feat: add GET brains/public route

* feat: add brains library layout

* feat: add brain subscriber count
2023-09-21 09:35:53 +02:00
Stan Girard
f74a1c50c8
feat(strapi): added first draft (#1237) 2023-09-21 00:20:29 +02:00
Stan Girard
0d29c9e3c4
Feat/paperclip (#1234)
* feat(upload): changed icons

* feat(tokens): increased
2023-09-20 17:21:29 +02:00
Stan Girard
ef0f874af9
feat(upload): changed icons (#1233) 2023-09-20 17:07:37 +02:00
Stan Girard
5411a65d1d feat(tokens): increased to 500 min 2023-09-20 17:03:32 +02:00
Mamadou DICKO
1593c3342c
feat: display brain status on settings page (#1221)
* feat: update GET/brains return status

* feat: add public tag on brain list

* feat: add public tag for public brain on brain settings tab

* feat: hide over tab when brain access is public
2023-09-20 16:24:56 +02:00
Stan Girard
d8e188788f
fix(gpt-3.5-instruct): bug and new version of node (#1228) 2023-09-20 16:16:50 +02:00
Stan Girard
2fc6e7e38b chore(github): fixed 2023-09-20 14:50:45 +02:00
Mamadou DICKO
37935c59ca
feat: add public brain creation (#1218)
* feat: add brain status input

* feat: update translations

* feat: add confirmation modal for brain status changing to public
2023-09-20 09:35:09 +02:00
Stan Girard
9d73531fc8 fix(translation): fixed for english feedingBrain 2023-09-20 09:06:58 +02:00
Mamadou DICKO
1ec736b357
fix: fix some bugs (#1201)
* feat(brainSettings): add feed process instrcution to knowledge tab

* feat: prevent default brain auto fetch

* feat: prevent chat submision on submit button click

* feat: remove unrelevant toast

* feat: remove duplicated GA initialization

* feat: add brain name in notifications

* fix(test): update analytics import path

* refactor: move ChatsList utils to ChatsList directory

* fix(test): update chatlist tests
2023-09-18 21:28:07 +02:00
Stan Girard
8914c7c357
fix(chats): now in order and with a little bonus ;) (#1200)
* fix(chats): now in order and with a little bonus ;)

* style(eslint): fixed
2023-09-18 18:25:28 +02:00
Zineb El Bachiri
886d30cf9e
feat(analytics): add google analytics (#1147)
* 🚚 move june analytics to folder and update paths

*  set up google analytics

*  sent firt GA event with react-ga

* 🔒️ update security headers to include vercel and google analytics

* 🚚 rename Vercel Analytics

*  use react-ga4 instread

* 💚 fix tests
2023-09-18 15:12:50 +02:00
Mamadou DICKO
b39566882b
feat: add tooltip on upload card toggle button (#1197) 2023-09-18 14:51:30 +02:00
Mamadou DICKO
7dd404935b
feat(e2e): add playright config and createBrain e2e test (#1177)
* chore: add playright config

* feat: add playright first examples

* feat: add 'test-e2e command'

* feat: add createBrain E2E test
2023-09-18 10:23:56 +02:00
Stan Girard
143d32ddf1
feat(chat): added copy feature to message (#1192) 2023-09-18 00:26:53 +02:00
Stan Girard
d855bfbee8
fix(notification): information now displayed on the right (#1191) 2023-09-18 00:24:20 +02:00
Stan Girard
86c10bd14d
style(notifications): improve the messages for the notifications (#1185) 2023-09-16 15:58:12 +02:00
Stan Girard
f362269600
feat(notificatins): higher refresh rate (#1184)
* fix

* feat(notificatins): higher refresh rate
2023-09-16 13:51:08 +02:00
Stan Girard
4fb8c34efd
fix(usersettings): Fix bugs with user settings in the back always gpt-3.5-turbo (#1183)
* fix

* feat(gpt4): added support for gpt4
2023-09-16 00:22:42 +02:00
Stan Girard
223d3d9102
feat(frontend): responsiveness (#1174)
* feat: 🎸 responsiveness chat

* feat: 🎸 responsive

added responsive menu

* feat: 🎸 responsive

brain management

* fix: 🐛 docker

prod
2023-09-15 01:09:26 +02:00
Mamadou DICKO
686612a69d
feat: make error messages more clear (#1166) 2023-09-14 10:35:30 +02:00
Mamadou DICKO
8a07a8a31d
feat: submit upload on Enter (#1160) 2023-09-14 10:34:45 +02:00
Mamadou DICKO
2b4c3ecbbc
feat: update header and improve ux (#1164)
* feat: add Knowledge tab

* feat: use tanstack query for knowledges fetching

* feat: update header

* feat: remove upload page

* feat: make chat page the default redirection page

* feat(homePage): redirect user to chat page when already authenticated
2023-09-13 16:43:25 +02:00
Mamadou DICKO
70ffa5d6be
feat: add knowledge tab on brains settings page (#1163)
* feat: add Knowledge tab

* feat: use tanstack query for knowledges fetching
2023-09-13 16:41:28 +02:00
Stan Girard
322ee318be
feat: the good user management (#1158)
* feat(user_management): added user management

* feat(user_management): added user management

* feat(user_management): removed print

* feat: use tanstack query for user data fecthing

* feat: add getUser to sdk

* feat: improve user page ux use tanstack query

* feat: fetch models from backend on brains settings page

* feat: update model selection on chat page

* feat: update tests

---------

Co-authored-by: mamadoudicko <mamadoudicko100@gmail.com>
2023-09-13 13:47:12 +02:00
Mamadou DICKO
dbb8a0e86e
feat: update isValidUrl function (#1155) 2023-09-12 18:14:03 +02:00
Mamadou DICKO
7f9ea9d64c
feat: remove <BrainConfigProvider /> (#1154) 2023-09-12 18:04:35 +02:00
Mamadou DICKO
7cc90ef258
feat: add polling for pending notifications (#1152)
* feat: add notification controller

* feat: add polling logic on pending notifications

* feat: refecth notifications on Feed
2023-09-12 18:00:46 +02:00
Mamadou DICKO
10af0c949a
feat: add notifications components (#1148)
* feat: rename ChatMessages to MessagesDialog

* feat: rename history to messages

* feat: add notifications to ChatContext

* feat: add getNotificationsFromChatHistory

* feat: add getMergedChatHistoryWithReducedNotifications

* refactor: update useActionBar

* refactor: update <ChatMessage />-n

* feat: update crawler and endpoint notifications content

* feat: display notifications

* test: update <MessageDialog /> tests

* feat: rename ChatMessage to QADisplay

* feat: rename ChatHistory to ChatMessage

* feat(upload): throw error when file missing

* feat: rename getMergedChatHistoryWithReducedNotifications to getMergedChatMessagesWithReducedNotifications

* feat: change history wording to message

* feat: move getFileIcon to lib

* refactor(NotificationDisplayer): move types to types.ts

* chore: improve ux

* feat: rename MessagesDialog to ChatDialogue
2023-09-12 17:44:15 +02:00
Mamadou DICKO
72659709a8
fix: update crawl and upload endpoints (#1142) 2023-09-08 11:03:14 +02:00
Mamadou DICKO
7e1e13fab5
feat(feedBrain): add request pending message #1135 (#1136)
* feat(feed brain): add pending message

* feat: add 'filesUploading' translation

* feat(chatPage): update tests
2023-09-08 09:57:21 +02:00
Mamadou DICKO
9464707d40
feat: merge chat history with chat notifications (#1127)
* feat: add chat_id to upload and crawl payload

* feat(chat): return chat_history_with_notifications

* feat: explicit notification status on create

* feat: handle notifications in frontend

* feat: delete chat notifications on chat delete request
2023-09-07 17:23:31 +02:00
Mamadou DICKO
a14c033da5
feat: allow user to chat while feed process is pending (#1120)
* feat: remove 'ux-upload' feature flag

* feat: publish a message at the end of feed process

* feat: hide feed card during feed process
2023-09-07 10:15:19 +02:00
Mamadou DICKO
711eff0863
feat: add multiple upload and crawl in parallel (#1118)
* feat: explicit accepted files

* feat: un-synchronize upload and chat FileUploader

* feat: add uploading file new ui

* feat: rename +UrlDisplayer to FeedTitleDisplayer

* feat: add icon per file type

* feat: remove file extension on display

* feat: send feed items to backend

* feat: track file upload

* chore: improve dx
2023-09-07 10:00:45 +02:00
Zineb El Bachiri
eb7b677fef
🚑 add growthbook to csp headers (#1117) 2023-09-06 11:40:07 +02:00
Mamadou DICKO
f230bc10de
feat(crawler): add multiple urls support (#1112)
* feat(Field): add icon support

* feat(Crawler): replace submit button with send icon

* feat(crawler): add multiple urls support

* feat: add <FeedItems/> component to display adding items

* feat(FeedItems): add remove icon

* feat: add url displayer

* feat: add invalid url message

* fix: add crawler to upload page

* feat: clean sueCrawler

* feat: rename Feed to KnowledgeToFeed

* feat: add tracking
2023-09-05 18:47:18 +02:00
Zineb El Bachiri
34708c51ea
🚑 fix feature flags -> add it back to context (#1106) 2023-09-05 11:43:03 +02:00
Mamadou DICKO
9b163e5b65
feat: add <Feed /> component in chat page (#1103)
* refactor: update uploadPage structure

* feat: show upload component from chatbar

* refactor: move <Feed/> from upload page to chat page
2023-09-05 10:49:29 +02:00
Mamadou DICKO
14e44ac6ec
feat: add FeedBrainInput component (#1101)
* feat: add FeedBrainInput component

* feat: add upload button

* feat: update translations add feed_brain_placeholder

* refactor(uploadPage): add config.ts

* feat(lib): add MentionInput

* feat: add <BrainSelector/> component

* feat: update FeedBrainInput
2023-09-04 15:27:06 +02:00
Mamadou DICKO
2a479419a7
fix: prevent submit on share button click (#1098) 2023-09-04 10:25:48 +02:00
Mamadou DICKO
bea275f2ff
feat: add tanstack query and optimistic fetch on brains settings page (#1087)
* refactor: remove <TrackingWrapper />

* feat: add tanstack query

* feat: add optimistic fetch to brain settings page
2023-09-01 15:14:35 +02:00
Mamadou DICKO
46e19e8ac2
fix: fix hash redirection (#1085) 2023-08-31 18:25:06 +02:00
Mamadou DICKO
51bd020a2f
fix: update hash routing logic (#1082) 2023-08-31 18:08:39 +02:00
Mamadou DICKO
47b8d697c6
fix(openAiKey): handle nullish values (#1080) 2023-08-31 16:28:26 +02:00
Mamadou DICKO
aaf841136c
feat: change share brain button logic (#1078) 2023-08-31 16:02:32 +02:00
Zineb El Bachiri
55a387d740
🔒️ add url api.openai to CSP headers (#1077) 2023-08-31 15:50:16 +02:00
Mamadou DICKO
4306f60959
feat: truncate long chatname (#1076) 2023-08-31 14:54:57 +02:00
Mamadou DICKO
e769eddd76
feat: remove mic button (#1075) 2023-08-31 14:53:43 +02:00
Mamadou DICKO
bd2358f425
fix: fix minor bugs (#1070)
* fix: update get_user_id_by_user_email type

* fix: update getEditorText logic

* feat(mentionSuggestions): render empty popover
2023-08-31 10:41:02 +02:00
Mamadou DICKO
23b21026c2
feat(chatMessage): update attributes display (#1067) 2023-08-30 16:28:10 +02:00
Mamadou DICKO
22935583f3
feat(newBrain): update data validation logic and add * on required fields (#1065)
* feat(createBrain): add * on required fields

* fix: update brain data validation logic
2023-08-30 15:53:51 +02:00
Mamadou DICKO
a6333acdbe
feat: make chatlist scrollable (#1064) 2023-08-30 15:53:10 +02:00
Mamadou DICKO
5fe8807261
fix(invitationPage): avoid multiple re-rendering (#1062) 2023-08-30 13:40:48 +02:00
Zineb El Bachiri
3227b1175f
feat(chat): remove /files from chat bar placeholder (#1060) 2023-08-30 12:55:58 +02:00
Mamadou DICKO
1b63141b26
feat: add prompt and brain change tracking (#1058) 2023-08-30 11:28:15 +02:00
Mamadou DICKO
04e9f572a4
feat: add openai api key validation (#1057) 2023-08-30 11:20:28 +02:00
Mamadou DICKO
5612c2b455
feat: add name missing error in new brain modal (#1055)
* feat: update toast z index

* feat(brain modal): add name missing message
2023-08-30 11:04:03 +02:00
Mamadou DICKO
bcf954135c
feat: handle new chat button click (#1054) 2023-08-30 09:45:11 +02:00
Mamadou DICKO
c5a7b8faef
feat: update header and remove prompt / brain on backspace (#1052)
* feat: update header

* feat: remove selected prompt / brain on backspace

* feat(chat): update suggestions component

* refactor: add getAxiosErrorParams
2023-08-29 15:52:22 +02:00
Mamadou DICKO
6e43e6f16f
feat: add headless question tracking (#1051) 2023-08-29 12:26:08 +02:00
Mamadou DICKO
072d97adb1
feat: add prompt trigger through # (#1023)
* feat: add prompt trigger to mention input

* feat: update chat shortcuts

* test: update BrainProviderMock

* feat: improve ux

* feat: update message header position

* feat: improve mention input dx

* fix(MentionInput): fix minor bugs

* feat: refactor <ShareBrain/>

* feat: add brain sharing button

* fix: make popover buttons click working

* feat: update backspace handle logic

* feat: update add new brain button ui
2023-08-29 10:50:36 +02:00
Elie
77863e78bd
Fix English grammar translation.json (#1046) 2023-08-27 16:30:54 +02:00
ChloeMouret
d7a508acdd
feat: add 2 save buttons on Brain management tab (#1039)
* add 2 save buttons

* use translation
2023-08-25 18:37:56 +02:00
Mamadou DICKO
66bafcf2c5
feat(messagesList): auto scroll on new message (#1040) 2023-08-25 12:05:04 +02:00
Zineb El Bachiri
a9411c973a
fix(analytics): june debug for real (#1033)
* 🔥 remove Suspense because no ssr in front anymore

*  add debugging

* 🔥 remove debugger and better logs

* 🐛 fixed tracker by adding it to dependencies

* 🚨 add dependencies to hooks

* 🚨 remove linter warning from unawaited promise
2023-08-25 10:33:14 +02:00
ChloeMouret
d36217be80
feat: Remove chat id from chat list (#1031)
* update hover color : blue for modifying and red for delete

* remove chat id from chat lists
2023-08-24 19:44:42 +02:00
Ikko Eltociear Ashimine
152f237d9e
chore(chat): fix typo in useConfigModal.ts (#1021)
occured -> occurred
2023-08-23 10:10:10 +02:00
Zineb El Bachiri
2b74ebc1f0
fix(Analytics): no tags tracking for upload & crawl (#1024)
* 🚚 create useCrawlApi to use in useCrawler hook

* 🚑 fix tracking in Crawl

* 🧑‍💻 add hot reloading within docker containers

* 🚑 fix tracking for upload

* 🚚 create useUploadApi for fileUpload request

* 📈 add june tag for Language change

* 🩹 revert dependencies
2023-08-23 10:03:10 +02:00
Mamadou DICKO
b967c2d2d6
feat: add brain prompt overwritting from chat (#1012) 2023-08-22 14:23:27 +02:00
Zineb El Bachiri
4b1f4b1412
feat(prompts): add public prompts to SQL db (#1014)
*  add public prompts to SQL scripts

* 🚨 fix: missing zh-cn translation key
2023-08-22 13:14:31 +02:00
Buer
e328ab81b3
feat(translation): Added Simplified Chinese translation,Fix pt-br not working (#1011)
* 🌐 Add Chinese translation, fix pt-br errors.

* 🌐 Fix syntax errors.
2023-08-22 12:04:54 +02:00
Mamadou DICKO
8e94f22782
feat(chat): add brain selection through mention input (#969)
* feat(chat): add brain selection through mention input

* feat: detect mention deletion from editor

* feat: improve ux

* chore: improve dx

* feat: update translations

* feat: improve mention popover ui

* fix: update failing tests

* feat: add mentions suggestion popover

* feat: update translations

* feat: remove add new brain button
2023-08-22 10:05:52 +02:00
Zineb El Bachiri
20d5294795
explicit too many request in chat error (#1000) 2023-08-21 16:07:07 +02:00
Zineb El Bachiri
9aaedcff51
Fix/requests limiting (#980)
* 🗃️ Rename users table into user_daily_usage

* 💥 replace User model with UserIdentity model

* 🗃️ New UserDailyUsage class for database interaction

* 🐛 fix daily requests rate limiting per user

* 🐛 fix user stats and properties update

* ✏️ add typing and linting

* 🚚 rename user_dialy_usage Class  into user_usage & requests_count into daily_requests_count

* 🚑 fix some rebase errors
2023-08-21 14:05:13 +02:00
Gustavo J. Maciel
3a44f54d6b
fix(settings): select proper brain model (#943)
* fix(settings): select proper brain model

* feat(settings): save model on change
2023-08-18 12:12:17 +02:00
Zineb El Bachiri
74da7dde2d
Crawl/update env variables (#931)
* 📝 add env variable for crawl

* 🐛 make CharQuestion with optional attributes

* 💡 make chatQustion config optional
2023-08-18 11:59:20 +02:00
Stepan Lebedev
600ff1ede0
feat(Unplug): chatting without brain streaming (#970)
* feat(Unplug): Adds new basic headless llm

* feat(Unplug): adds chatting without brain option when no streaming

* feat(Unplug): adds chatting without brain option when streaming
2023-08-18 10:32:22 +02:00
Aditya Mundhalia
85ae06c829
correcting scroll & chat response view better code (#960) 2023-08-16 14:16:36 +02:00
Mamadou DICKO
f99f81d10f
feat: add brain missing message (#958) 2023-08-16 10:47:38 +02:00
Mamadou DICKO
9235a848d1
feat: change messages position (#946) 2023-08-14 10:43:10 +02:00
Zineb El Bachiri
d80178a848
fix(translations): pr portuguese translations (#933)
*  add typing to translations

* 🐛 add removed brain key in some languages

* 🐛 put correct translations for fr/es/ru

* fix(translation): missing a few

---------

Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2023-08-12 18:54:41 +02:00
Gabriel Rodrigues Eger
cb020c0e63
Portuguese language added, "Select a Quivr Personality" btn is now supporting translations as well (#925)
* Added Portuguese Language + Translation of "Select A Quivr Personality" btn

* Added Portuguese Language + Translation of "Select A Quivr Personality" btn

* Undoing changes to yarn.lock from previous commits (had run on windows)
2023-08-11 13:19:21 +02:00
Mamadou DICKO
80be40ad34
feat: update chat ui (#907)
* feat: remove react-mentions

* feat: add chat header

* feat: remove v2/chat

* feat: add fature flag

* feat: add new chat UI

* feat: add prompt and brain name to messages
2023-08-11 10:06:20 +02:00
Zineb El Bachiri
f3d9c89163
🚑 fix vercel yarn run build fail (#919) 2023-08-10 13:07:22 +02:00
Gustavo J. Maciel
1360ce801d
feat(invitation): add translations (#909) 2023-08-10 09:55:40 +02:00
Stepan Lebedev
672eec08bc
feat: Russian language translation (#903)
* feat(Russian Translation): Adds Russian Language option

* fix: Corrects Failedtofetch field in English Version

* fix: Adds missing translations on upload page
2023-08-09 11:17:12 +02:00
Mamadou DICKO
69a73f5d5a
feat: add new chat bar (#896)
* feat: add ActionsBar

* feat: add brain trigger
2023-08-08 17:28:34 +01:00
Gustavo J. Maciel
69d08937de
fix(es): spanish translations (#895)
Fix some typos on spanish translations
2023-08-08 17:18:28 +01:00
Stepan Lebedev
71e142ba3c
feat: deleting brains on brain manager page (#893)
* fix: new libraries for translation

* feat(deleting-brains-on-brain-management-page): adding a delete brain button and a confirmation modal on a management page

* feat(deleting-brains-on-brain-management-page): adding tests for confirmation Modal

* feat(deleting-brains-on-brain-management-page): Adding translation to the delete button and modal
2023-08-08 17:18:05 +01:00
Mamadou DICKO
c43e0c01c4
feat: add new chat page (#890) 2023-08-08 14:01:17 +01:00