Mirror of khoj from Github
Find a file
sabaimran e8a13f0813
Add multi-user support to Khoj and use Postgres for backend storage (#549)
- Adds support for multiple users to be connected to the same Khoj instance using their Google login credentials
- Moves storage solution from in-memory json data to a Postgres db. This stores all relevant information, including accounts, embeddings, chat history, server side chat configuration
- Adds the concept of a Khoj server admin for configuring instance-wide settings regarding search model, and chat configuration
- Miscellaneous updates and fixes to the UX, including chat references, colors, and an updated config page
- Adds billing to allow users to subscribe to the cloud service easily
- Adds a separate GitHub action for building the dockerized production (tag `prod`) and dev (tag `dev`) images, separate from the image used for local building. The production image uses `gunicorn` with multiple workers to run the server.
- Updates all clients (Obsidian, Emacs, Desktop) to follow the client/server architecture. The server no longer reads from the file system at all; it only accepts data via the indexer API. In line with that, removes the functionality to configure org, markdown, plaintext, or other file-specific settings in the server. Only leaves GitHub and Notion for server-side configuration.
- Changes license to GNU AGPLv3

Resolves #467 
Resolves #488 
Resolves #303 
Resolves #345 
Resolves #195 
Resolves #280 
Resolves #461 
Closes #259 
Resolves #351
Resolves #301
Resolves #296
2023-11-16 11:48:01 -08:00
.github/workflows Use a different name for the production-config containers 2023-11-16 10:28:28 -08:00
config Fix configure openai processor for khoj docker 2023-07-30 02:07:33 -07:00
docs Update content by source via API. Make web client use this API for config 2023-11-07 03:41:19 -08:00
scripts Sync desktop app package.json with other Khoj clients metadata 2023-10-13 20:43:55 -07:00
src Add multi-user support to Khoj and use Postgres for backend storage (#549) 2023-11-16 11:48:01 -08:00
tests Set max cos distance to 0.18. Test search API query with max distance 2023-11-15 20:26:21 -08:00
.dockerignore Use pypi khoj to fix docker builds and dockerize github workflow 2023-02-19 01:57:01 -06:00
.gitattributes Exclude tests data file from programming stats on Github 2023-08-28 11:00:52 -07:00
.gitignore [Multi-User Part 5]: Add a production Docker file and use a gunicorn configuration with it (#514) 2023-10-26 13:15:31 -07:00
.pre-commit-config.yaml Run mypy checks in test workflow and on push (via pre-commit) 2023-02-17 16:08:56 -06:00
docker-compose.yml Add KHOJ_prefix to server admin credentials environment variables 2023-11-14 16:13:13 -08:00
Dockerfile [Multi-User Part 1]: Enable storage of settings for plaintext files based on user account (#498) 2023-10-26 09:42:29 -07:00
gunicorn-config.py [Multi-User Part 5]: Add a production Docker file and use a gunicorn configuration with it (#514) 2023-10-26 13:15:31 -07:00
LICENSE Change license to GNU AGPLv3 from GNU GPLv3 2023-11-16 11:14:06 -08:00
manifest.json Release Khoj version 0.14.0 2023-11-10 00:28:33 -08:00
prod.Dockerfile Add OCR runtime dependencies to prod Dockerfile as well 2023-11-05 15:40:05 -08:00
pyproject.toml Downgrade pyproject.toml to avert depedency conflict 2023-11-15 10:47:54 -08:00
pytest.ini [Multi-User Part 3]: Separate chat sesssions based on authenticated users (#511) 2023-10-26 11:37:41 -07:00
README.md Use 500px png of khoj logo instead svg for much smaller asset size 2023-08-07 18:27:11 -07:00
versions.json Release Khoj version 0.14.0 2023-11-10 00:28:33 -08:00

Khoj Logo

test dockerize pypi

An AI personal assistant for your digital brain


Khoj is a desktop application to search and chat with your notes, documents and images.
It is an offline-first, open source AI personal assistant accessible from your Emacs, Obsidian or Web browser.
It works with jpeg, markdown, notion, org-mode, pdf files and github repositories.


🔎 Search 💬 Chat
Quickly retrieve relevant documents using natural language Get answers and create content from your existing knowledge base
Does not need internet Can be configured to work without internet