🧠 Dump all your files and chat with it using your Generative AI Second Brain using LLMs ( GPT 3.5/4, Private, Anthropic, VertexAI ) & Embeddings 🧠
Go to file
Charles Brandt 0d3e925f27
Fix #1290 issue running migrations (#1585)
# Description

In issue #1290 folks report difficulty running migrations on an existing
instance. The current migration table includes a `name` column, but no
`id` column:

```
CREATE TABLE IF NOT EXISTS migrations (
  name VARCHAR(255)  PRIMARY KEY,
  executed_at TIMESTAMPTZ DEFAULT current_timestamp
);
```

By changing the `migrations.sh` script to use the `name` field, the
migrations run as expected.

## Checklist before requesting a review

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
2023-11-04 21:30:03 +01:00
.aws fix(aws): fixed cpu 1 2023-09-21 11:26:58 +02:00
.github feat(cms): added github actions 2023-09-21 10:18:04 +02:00
.idea improve (importing): reorganization of the import structure (#964) 2023-08-21 12:25:16 +02:00
.vscode feat: ⚙️🐞 configure debugger for the backend (#1345) 2023-10-09 15:23:13 +02:00
backend feat: 🎸 telegram 2023-11-01 22:33:47 +01:00
cms/quivr feat: add remote notification config (#1547) 2023-11-02 19:20:07 +01:00
connectors/telegram_bot feat: 🎸 telegram (#1559) 2023-11-02 09:38:07 +01:00
docs feat: 🎸 docs (#1561) 2023-11-02 14:42:39 +01:00
frontend feat: make auth mode configurable (#1579) 2023-11-03 14:18:47 +01:00
scripts feat(cms): update content type (#1477) 2023-10-24 14:49:13 +02:00
.backend_env.example feat: setup premium feature backend (#1467) 2023-10-23 18:19:04 +02:00
.flake8 Feat: chat name edit (#343) 2023-06-20 09:54:23 +02:00
.frontend_env.example feat: make auth mode configurable (#1579) 2023-11-03 14:18:47 +01:00
.gitignore feat: 🎸 sitemap (#1483) 2023-10-24 22:21:12 +02:00
CHANGELOG.md chore(main): release 0.0.104 (#1562) 2023-11-03 10:27:26 +01:00
docker-compose.dev.yml feat: ⚙️🐞 configure debugger for the backend (#1345) 2023-10-09 15:23:13 +02:00
docker-compose.yml feat: add a cron to remove onboarding more than 7 days (#1397) 2023-10-16 16:11:34 +02:00
install_helper.sh fix(docs): add prerequisites section in step 2 (#1149) 2023-09-27 09:28:59 +02:00
LICENSE feat(license): added 2023-05-13 18:12:35 +02:00
logo.png docs(readme): making it nice (#102) 2023-05-21 14:53:47 +02:00
Makefile chore(makefile): added build first because duplicated build failed 2023-08-19 14:51:24 +02:00
migration.sh Fix #1290 issue running migrations (#1585) 2023-11-04 21:30:03 +01:00
README.md docs: grammatical errors in README.md (#1536) 2023-11-02 09:49:37 +01:00
vercel.json Feat/preview env (#399) 2023-06-29 09:55:06 +02:00

Quivr - Your Second Brain, Empowered by Generative AI

Quivr-logo

Discord Follow GitHub Repo stars Twitter Follow

Quivr, your second brain, utilizes the power of GenerativeAI to store and retrieve unstructured information. Think of it as Obsidian, but turbocharged with AI capabilities.

Roadmap here

Key Features 🎯

  • Universal Data Acceptance: Quivr can handle almost any type of data you throw at it. Text, images, code snippets, we've got you covered.
  • Generative AI: Quivr employs advanced AI to assist you in generating and retrieving information.
  • 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 (Not Yet)
    • CSV
    • Word
    • Audio
    • Video
  • Open Source: Freedom is beautiful, and so is Quivr. Open source and free to use.

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 files

    cp .backend_env.example backend/.env
    cp .frontend_env.example frontend/.env
    
  • Step 3: Update the backend/.env and frontend/.env file

    Your supabase_service_key can be found in your Supabase dashboard under Project Settings -> API. Use the anon public key found in the Project API keys section.

    Your JWT_SECRET_KEY can be found in your supabase settings under Project Settings -> API -> JWT Settings -> JWT Secret

    The 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
  • Step 4: Use the migration.sh script to run the migration scripts

    chmod +x migration.sh
    ./migration.sh
    

    Choose either Create all tables if it's your first time or Run 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!

Theodo Padok Aleios BAM Sicara

License 📄

This project is licensed under the Apache 2.0 License - see the LICENSE file for details

Stars History 📈

Star History Chart