375f50356c
# Description New Modules folder with "user" module: - controller: contains the current route - entity: contains the current Models (TO be renamed DTO) - repository: contains the current repo - service: methods used by other modules ## 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): |
||
---|---|---|
.aws | ||
.github | ||
.idea | ||
.vscode | ||
backend | ||
cms/quivr | ||
connectors/telegram_bot | ||
docs | ||
frontend | ||
scripts | ||
.backend_env.example | ||
.flake8 | ||
.frontend_env.example | ||
.gitignore | ||
CHANGELOG.md | ||
docker-compose.dev.yml | ||
docker-compose.local.yml | ||
docker-compose.yml | ||
install_helper.sh | ||
LICENSE | ||
logo.png | ||
Makefile | ||
migration.sh | ||
README.md | ||
vercel.json |
Quivr - Your Second Brain, Empowered by Generative AI
Quivr, your second brain, utilizes the power of GenerativeAI to be your personal assistant ! Think of it as Obsidian, but turbocharged with AI capabilities.
Key Features 🎯
- Fast and Efficient: Designed with speed and efficiency at its core. Quivr ensures rapid access to your data.
- Secure: Your data, your control. Always.
- OS Compatible: Ubuntu 22 or newer.
- File Compatibility: Text, Markdown, PDF, Powerpoint, Excel, CSV, Word, Audio, Video
- Open Source: Freedom is beautiful, and so is Quivr. Open source and free to use.
- Public/Private: Share your brains with your users via a public link, or keep them private.
- Marketplace: Share your brains with the world, or use other people's brains to boost your productivity.
Demo Highlights 🎥
https://github.com/StanGirard/quivr/assets/19614572/a6463b73-76c7-4bc0-978d-70562dca71f5
Getting Started 🚀
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
You can find everything on the documentation.
Prerequisites 📋
Ensure you have the following installed:
- Docker
- Docker Compose
Additionally, you'll need a Supabase account for:
- Creating a new Supabase project
- Supabase Project API key
- Supabase Project URL
Installation Steps 💽
-
Step 0: If needed, the installation is explained on Youtube here
-
Step 1: Clone the repository using one of these commands:
- If you don't have an SSH key set up:
git clone https://github.com/StanGirard/Quivr.git && cd Quivr
- If you have an SSH key set up or want to add it (guide here)
git clone git@github.com:StanGirard/Quivr.git && cd Quivr
-
Step 2: Use the install helper script to automate subsequent steps. You can use the install_helper.sh script to setup your env files and execute the migrations.
prerequisites:
brew install gum # Windows (via Scoop) scoop install charm-gum brew install postgresql # Windows (via Scoop) scoop install postgresql
chmod +x install_helper.sh ./install_helper.sh
If you want to manually set up the environment, follow the steps below, otherwise skip to Step 6.
-
Step 2 - Bis: Copy the
.XXXXX_env
filescp .backend_env.example backend/.env cp .frontend_env.example frontend/.env
-
Step 3: Update the
backend/.env
andfrontend/.env
fileYour
supabase_service_key
can be found in your Supabase dashboard under Project Settings -> API. Use theanon
public
key found in theProject API keys
section.Your
JWT_SECRET_KEY
can be found in your supabase settings under Project Settings -> API -> JWT Settings -> JWT SecretThe
NEXT_PUBLIC_BACKEND_URL
is set to localhost:5050 for the docker. Update it if you are running the backend on a different machine.- Change variables in
backend/.env
- Change variables in
frontend/.env
- Change variables in
-
Step 4: Use the
migration.sh
script to run the migration scriptschmod +x migration.sh ./migration.sh
Choose either
Create all tables
if it's your first time orRun migrations
if you are updating your database.Alternatively, you can run the script on the Supabase database via the web interface (SQL Editor ->
New query
-> paste the script ->Run
)All the scripts can be found in the scripts folder
If you come from an old version of Quivr, run the scripts in migration script to migrate your data to the new version in the order of date
-
Step 5: Launch the app
docker compose up --build
-
Step 6: Navigate to
localhost:3000
in your browser -
Step 7: Want to contribute to the project?
docker compose -f docker-compose.dev.yml up --build
Contributors ✨
Thanks go to these wonderful people:
Contribute 🤝
Did you get a pull request? Open it, and we'll review it as soon as possible. Check out our project board here to see what we're currently focused on, and feel free to bring your fresh ideas to the table!
Sponsors ❤️
This project would not be possible without the support of our sponsors. Thank you for your support!
License 📄
This project is licensed under the Apache 2.0 License - see the LICENSE file for details