inparallel.ai is an intelligent developer knowledge retrieval system. It allows ingesting documentation, indexing it into vector databases, and retrieving knowledge using state-of-the-art vector search and Large Language Models (LLMs) to answer developer questions.
This is a monorepo built using pnpm workspaces, consisting of a Fastify Node.js API, a Python Retrieval and Ingestion Service, and several shared TypeScript packages.
apps/api: A Fastify Node.js API that acts as a gateway and manages core domain logic.apps/retrieval: A Python application built with FastAPI and Typer for ingesting documentation (crawling, chunking), storing embeddings via OpenAI and Qdrant, and performing Retrieval-Augmented Generation (RAG).packages/*: Shared modules including database schema (Drizzle ORM), API contracts, tRPC setup, shared types, and API client wrappers.
Comprehensive documentation for the project architecture and individual components is available in the docs/ directory:
- Architecture: High-level system design and component interactions.
- Getting Started: Guide for running the project locally.
- API Gateway (
apps/api): Documentation for the main Node.js gateway service. - Retrieval Service (
apps/retrieval): Details on the Python FastAPI/Typer service covering ingestion and vector search. - Shared Packages (
packages/): Documentation covering the shared packages such as the DB, api-contracts, and types.
- TypeScript / Node.js: Fastify, Drizzle ORM, tRPC, Zod.
- Python: FastAPI, Typer.
- AI / Search: OpenAI Embeddings, Qdrant (Vector Database).
- Database: PostgreSQL (via Supabase).
- Package Manager: pnpm.