A Deno-based chatbot powered by RAG (Retrieval-Augmented Generation) for querying knowledge bases stored in local SQLite databases. Designed to work seamlessly with monkeytab for document and data management.
- Local-first RAG system using SQLite for document storage
- Natural language queries over your knowledge base
- Integration with monkeytab for editing and managing data as tables
- Fast document retrieval and semantic search
- Privacy-focused: all data stays on your machine
- Deno v2.0 or higher
- SQLite database with your knowledge base
git clone https://github.com/yourusername/mtchat.git
cd mtchatdeno task startCreate a .env file in the project root:
SQLITE_DB_PATH=./data/knowledge.db- Document Storage: Your documents and knowledge base are stored in a local SQLite database, managed through monkeytab
- Retrieval: When you ask a question, mtchat searches the database for relevant documents using semantic similarity
- Generation: Retrieved context is combined with your query to generate accurate, grounded responses
mtchat/
├── src/
│ ├── chat/ # Chat interface and conversation handling
│ ├── rag/ # RAG pipeline components
│ ├── db/ # SQLite database operations
│ └── search/ # Document retrieval and search
├── data/ # Local SQLite databases
├── deno.json # Deno configuration
└── README.md
# Run in development mode
deno task dev
# Run tests
deno task test
# Type check
deno check src/main.tsMIT License - see LICENSE for details.
Juan Pablo Marin Diaz