GDPR-compliant RAG chatbot
you actually own

Self-hosted boilerplate for building AI chatbots over your documents. Python-only stack. Data stays in the EU by default. Runs on a €7/mo VPS.

Upload PDFs, DOCX, or spreadsheets. Ask questions. Get answers with source citations. GDPR compliance is architectural: deletion cascades across database, vector store, search index, and disk. Per-provider data residency tracking. Strict EU Mode blocks non-compliant providers. Works with Mistral, Scaleway, OVHcloud, or local Ollama.

Perpetual license, from €89 Full source code Self-hosted Python-only stack
FastAPI + HTMX ChromaDB / pgvector BM25 + vector search Ollama / any OpenAI API Docling + Redis ingestion queue

The problem with AI chatbots in Europe

Your client asks "where does our data go?" and you don't have a good answer. That's the gap EuroRAG fills.

The problem

Your client's data leaves the EU the moment someone hits send. Major LLM providers, Pinecone, Supabase: all US-hosted and subject to the CLOUD Act. The vendor's template DPA won't satisfy a rigorous Article 46 audit.

EuroRAG

Every component runs on your server: inference, vectors, database, files. Nothing leaves your VPS unless you explicitly configure it. Strict EU mode (enabled by default) blocks non-compliant providers before data is sent. Mistral or Scaleway (both French, both EU-hosted) when you want an EU cloud API. Full data residency tracking per provider.

The problem

Most RAG boilerplates are React on the frontend, Node.js in the middle, Python in the back, plus Docker orchestration gluing it all together. Your team knows Python. Now you need a second hire just to move a button in the chat UI.

EuroRAG

One language, end to end. FastAPI handles the backend, Jinja2 handles the templates, HTMX handles interactivity. The same developer who writes the API can modify every page. No npm install, no webpack, no build step. And no second hire.

The problem

Open-source RAG apps work fine once installed, until your client needs a custom workflow, branded UI, or an integration their existing systems don't support. Ripping apart a finished application is slower than building from a clean foundation.

EuroRAG

Source code designed to be modified, not just deployed. Add custom API routes, override templates, swap services. Your changes live in a custom/ directory that's never touched by core updates. It's a starting point for building products, not a product you're afraid to touch.

💶

Runs on a €7/mo EU server

Any VPS with Docker in any EU datacenter. One docker compose up and five containers start: app, worker, Redis, ChromaDB, and Ollama. No Kubernetes, no managed services, no surprise bills. Use a cloud LLM API for chat or point to your own GPU server.

📄

Smart Document Processing

PDF, DOCX, PPTX, XLSX, CSV, HTML, TXT, Markdown. Smart OCR routing detects text-based PDFs and skips the heavy extraction pipeline - 20× faster than running everything through OCR. Scanned documents still get full layout-aware extraction. Chunks preserve page numbers, section headings, and content types into retrieval. A Redis worker queue processes everything in the background.

🤖

Any Model, EU-First

Ollama for fully local inference. EU-hosted cloud APIs: Mistral, Scaleway, OVHcloud, IONOS - all EU-headquartered, none subject to the US CLOUD Act. Any OpenAI-compatible endpoint works out of the box. Strict EU Mode blocks non-compliant providers before data leaves your server. Switch models per conversation from the chat UI.

🔍

Hybrid Search

BM25 keyword search fused with vector similarity using Reciprocal Rank Fusion. Pure vector search misses exact terms - product codes, legal references, technical identifiers - because embeddings blur them into semantic neighbours. EuroRAG runs both in parallel so 'Article 17' returns Article 17. Each user gets an isolated search index - no cross-user data leakage, even through keyword queries.

🔒

GDPR by Architecture

Deletion cascades across database, vectors, search index, and disk - no orphaned personal data in any storage layer. Audit logging tracks 22 action types. Users export their data as JSON or ZIP. Configurable retention with automatic cleanup. Consent enforcement on registration with withdrawal support.

🛡️

Security Hardened

SSRF protection across all connectors. Per-endpoint rate limits (auth: 5/min, chat: 20/min, upload: 10/min). File content validation with libmagic, not just extension checking. Security headers: CSP, HSTS, X-Frame-Options, X-Content-Type-Options. MaxBodySize middleware prevents memory exhaustion. Path traversal prevention on all file operations.

💬

OpenAI-Compatible API

Full /v1/chat/completions and /v1/embeddings endpoints. Point any existing library - Python openai, LangChain, LlamaIndex - at EuroRAG by changing the base URL. SSE streaming in the built-in chat UI.

🔄

Customize Without Forking

Add API routes, override templates, swap vector stores or embedding providers, hook into the RAG pipeline at 9 event points - all from a custom/ directory that survives when you pull core updates. No merge conflicts.

🐍

Pure Python Stack

FastAPI + Jinja2 + HTMX. One language from API routes to page templates. No React build pipeline, no Node.js runtime, no separate frontend deployment. Your Python developer owns everything.

From purchase to running chatbot

Five steps. No sales calls, no onboarding, no waiting for provisioning.

Get the source code

Purchase Professional and you'll get access to a private git repository. Clone it onto your server or local machine. No zip downloads, no manual updates, just git pull when a new release ships.

Configure your setup

Copy .env.example to .env. Pick your path: Mistral or Scaleway API for simplicity, Ollama for fully local, or point to your own GPU server. The included infrastructure guide walks through each option with cost projections.

Deploy with Docker

Run docker compose up -d. Five containers start together: app, worker, Redis, ChromaDB, and Ollama. Skip the Ollama container if you're using Mistral or Scaleway API instead. The worker is what enables async document processing. Verify everything is healthy with curl http://localhost:8000/health. It returns component status.

Upload documents and chat

Drop your PDFs, Word docs, or spreadsheets into the UI. Once indexed, ask questions and get answers with source citations. Test the API with any OpenAI-compatible client.

Make it yours

Add custom API routes for your client's workflows. Override templates to match their branding. Swap the embedding model for better multilingual support. It's your code. Build the product they need.

Different tools for different jobs

A quick overview of three common approaches. For the full comparison across all five options (build-it-yourself, generic framework, ready-to-use app, SaaS boilerplate, and EuroRAG), see the full comparison page.

ChatRAG / StartKit.AI

Paid boilerplates · $199–399
Best for building chatbot SaaS businesses on cloud infrastructure. Ship fast with Stripe billing, multi-tenant, and managed services.
  • Next.js / React stack (ChatRAG: Next.js + OpenAI + Supabase)
  • Cloud-first deployment; managed vectors and DB
  • Built-in monetization (Stripe)
  • No local inference or self-hosted vectors
  • No GDPR data residency tooling

EuroRAG

Paid boilerplate · from €89
Best for building private, self-hosted knowledge bases for EU clients. Full data sovereignty, Python-only stack you customize and deploy on your own server.
  • Python-only stack (FastAPI + HTMX)
  • Fully self-hosted: vectors, database, inference
  • GDPR data residency tracking built-in
  • Hybrid BM25 + vector search (reciprocal rank fusion), which none of the compared tools offer by default.
  • Ollama for local inference, Mistral/Scaleway for EU cloud
  • Core/custom separation for safe updates

AnythingLLM

Open-source app · Free / from $50
Best if you want a ready-to-use RAG application you install and configure. Great UI, wide model support, managed EU hosting available.
  • Full application, not a boilerplate
  • JavaScript + Python stack
  • Self-hosted or managed EU hosting
  • Vector search with optional reranking (LanceDB); no BM25 keyword/hybrid retrieval.

All three are solid options. The right choice depends on whether you need a SaaS boilerplate (ChatRAG/StartKit.AI), a self-hosted boilerplate (EuroRAG), or a ready-to-use app (AnythingLLM). See the full comparison →

Buy once. Use forever.

Perpetual license. Your code never expires. Every tier includes 12 months of updates. Renew when you want, skip when you don't.

Available Now

Starter

€89
Perpetual license · 12 months of updates
The complete boilerplate. RAG engine, chat UI, API, document processing. Everything you need to deploy a private AI chatbot.
  • Core RAG engine + hybrid search (BM25 + vector)
  • OpenAI-compatible API
  • Streaming chat UI with citations
  • Document upload (PDF, DOCX, PPTX, XLSX, CSV, HTML, TXT, MD)
  • Advanced extraction with Docling (tables, OCR)
  • Async document processing (Redis worker queue)
  • User authentication + session management
  • Security hardening: SSRF protection, per-endpoint rate limits, content validation, security headers
  • Data residency tracking per provider
  • Docker Compose deployment
  • LLM deployment guide (local, cloud & hybrid)
  • Email support
After year 1: €39/yr for continued updates (optional)
Buy Now
Coming Fall 2026

Enterprise

€499
Perpetual license · 12 months of updates
For internal IT teams building an organization-wide document platform. Workspaces, bulk ingestion, and enterprise data sources.
  • Everything in Professional
  • Workspaces: isolated document scopes for departments and teams
  • Shared knowledge bases with per-workspace access
  • Bulk document ingestion
  • Enterprise connectors: Google Drive, SharePoint, IMAP
  • SSO / OIDC login
  • Priority email + live support
After year 1: €149/yr for continued updates (optional)
Get Notified

All tiers include full source code and a perpetual license. your deployment keeps running even if you never buy another thing from us. The code and updates are delivered through a private GitHub repository, or as a download if you'd rather skip GitHub.

Frequently asked questions

What is a GDPR-compliant RAG chatbot?

A RAG chatbot that processes documents and generates answers while meeting EU GDPR requirements: data residency controls, deletion cascades across all storage layers, audit logging, consent management, and the ability to run entirely on EU infrastructure without US data transfers. With Strict EU mode enabled (the default), non-compliant providers are blocked before data leaves your server.

How is EuroRAG different from AnythingLLM or LangChain?

EuroRAG builds GDPR compliance into the architecture: Article 17 erasure across vector stores, per-provider data residency tracking, audit logging, and Strict EU Mode that blocks non-compliant providers. Other tools treat compliance as a deployment-time choice. EuroRAG is also a boilerplate (source code you customize), whereas AnythingLLM is a ready-to-use application and LangChain is a library for building pipelines from scratch.

What happens after my 12 months of updates?

Nothing changes with your deployment. Your version of EuroRAG continues to work exactly as it does today. It's yours permanently. You just won't receive new features, compatibility patches, or security updates until you renew. Renewal is the same price whether you renew the day after expiry or two years later. No late fees, no penalty for gaps.

Is this actually GDPR-compliant out of the box?

EuroRAG gives you the technical infrastructure for GDPR compliance: data residency tracking, deletion cascades across all storage layers, audit logs, consent management, and the ability to run everything locally or on EU servers. However, GDPR compliance also involves organizational measures (privacy policies, DPAs, etc.) that depend on your specific use case. We provide the tools; you'll still need legal review for your deployment.

What models can I use?

Any model that runs on Ollama (Mistral, Llama 3, Qwen, Gemma, etc.) for fully local inference. Any OpenAI-compatible API for cloud: EU-hosted options include Mistral, Scaleway, OVHcloud, IONOS, and Gcore (all EU-headquartered, no US CLOUD Act exposure). OpenAI, Groq, and Together AI also work but are blocked by default under Strict EU mode. Or self-hosted inference servers like vLLM or LocalAI. Switch providers by changing environment variables - no code changes needed. The included infrastructure guide helps you pick the right setup for your budget and privacy requirements.

What file types can I upload?

PDF, DOCX, PPTX, XLSX, CSV, HTML, TXT, and Markdown. Document processing is powered by IBM Docling, which handles table-aware extraction (preserves table structure from PDFs and spreadsheets) and OCR for scanned documents. All processing happens on your server. Document content is never sent to external services.

What about data source connectors (folder sync, web crawling, Nextcloud, database)?

Data source connectors for automated syncing from folders, web crawlers, Nextcloud, and databases are included in the Professional tier. The Starter tier supports document upload through the API and UI, which covers most use cases for getting started. If you need automated ingestion from external sources, the Professional tier adds these connectors along with admin tools.

I'm not a developer. Is this for me?

Probably not. EuroRAG is source code, a boilerplate for developers and agencies building RAG products. You need to be comfortable with Python, Docker, and basic server administration. If you want a ready-to-use app, AnythingLLM might be a better fit.

Why Python-only? Isn't React better for UIs?

React is powerful, but it means your team needs JavaScript expertise, a Node.js build pipeline, and a separate frontend deployment. EuroRAG uses Jinja2 templates + HTMX, which means the same Python developer who writes the API can also modify the UI. For a boilerplate you're meant to customize, this is a significant advantage.

How does EuroRAG compare to ChatRAG or StartKit.AI?

They're different products for different goals. ChatRAG ($199 Starter / $269 Complete) and StartKit.AI ($199–399, one-time perpetual license) are built on Next.js/Node.js and designed for building chatbot SaaS businesses with Stripe billing and cloud infrastructure. EuroRAG is for building private, self-hosted knowledge bases on your own server with GDPR compliance built into the architecture. If you need SaaS monetization and cloud deployment, look at ChatRAG. If you need data sovereignty and a Python stack, EuroRAG is the fit.

Can it really run on a €7/month server?

Yes, except for LLM inference. The application itself (FastAPI, hybrid search, ChromaDB, document processing, even the embedding model) runs comfortably on a 2 vCPU / 4GB EU VPS (Hetzner CX22, ~€7/mo). Chat inference is the only heavy part, and you have two options: an EU-hosted API like Mistral or Scaleway (pay per token, typically €3–10/mo at small-team usage), or your own GPU server running Ollama if you want zero external calls. Realistic all-in for a production deployment on EU infrastructure: €8–16/mo. The included deployment guide walks through each setup with exact steps and current prices.

Does it support multiple languages?

Yes. EuroRAG works with any language your chosen LLM supports, and ships with configuration guidance for multilingual embedding models like BGE-M3 and Qwen3-Embedding that handle EU languages well. Since there's no hardcoded English dependency in the pipeline, you can run it entirely in German, French, or any other language.

When does it launch?

The Starter and Professional tiers are available now. The Enterprise tier launches Fall 2026. Join our newsletter below to get notified the moment it ships. We send occasional updates about new features, security patches, and deployment guides.

Do you offer refunds?

Since the product is complete source code, it can't be returned after download, so we don't offer refunds. By purchasing EuroRAG, you request immediate access to the private repository and acknowledge that you lose your 14-day right of withdrawal under EU Directive 2011/83/EU Article 16(m) once repository access is granted. If you have questions before purchasing or want to see specific code examples, get in touch. We're happy to help you decide if EuroRAG is the right fit.

Can I use one license for multiple client projects?

Yes. Under your single license you may build and deploy an unlimited number of applications for your clients, with no per-client or per-project fee, provided you never provide the Software source code to any third party, including your clients. Your clients receive the deployed application only, and never receive the Software source code as a development starting point. This license does not transfer to your clients.

How do I get the code after purchase?

At checkout you provide your GitHub username, and you're invited to the private repository automatically, typically within a minute of payment. Clone, configure your .env, and docker compose up. Prefer not to use GitHub? We'll send a download instead; just reply to your purchase email.

Can I see the code before buying?

The full repository is private, but we're happy to share specific examples: how the deletion cascade works, what a connector implementation looks like, how the template override system is structured. Get in touch with what you'd like to see. The architecture documentation shipped with the product is generated and verified against the actual code, so what's described is what you get.

Do prices include VAT? Can I get a proper invoice?

Checkout handles this automatically. EU businesses with a valid VAT ID are reverse-charged (no VAT added; you account for it locally). You'll receive a compliant invoice by email after purchase. We're an EU (Lithuanian) entity, so cross-border EU purchases are straightforward for your accounting.

Stay in the loop on EuroRAG

We send occasional emails about our product news, features, security updates, including launch notifications for Starter (July 15, 2026) and Enterprise (Fall 2026).

We use Brevo (EU-based) to process signups. No data leaves the EU.