Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/holzerjm/civichacks-demo/llms.txt

Use this file to discover all available pages before exploring further.

Your starting stack

This is the exact stack from the live demo. It’s a great starting point — you can build a complete hackathon project without adding anything else.

Ollama

Run LLMs locally with one command

LlamaIndex

RAG framework — connect AI to your data

Gradio

Build web UIs for ML apps in Python

HuggingFace

Local text embeddings (all-MiniLM-L6-v2)
Total cost: Fractions of a cent in electricity per query. No API keys, no cloud bills, no data leaving your machine.

Local LLMs and model runtimes

Run AI models on your own laptop — no internet, no API keys, no cost.

Ollama

Easiest setup, great CLI, wide model support

LM Studio

GUI-based, good for beginners who prefer a visual interface

llamafile

Single-file executables — download one file, run a model

vLLM

High-throughput serving, great for team/server deployments

Jan

Desktop app for local AI, beginner-friendly

Models to try

All available via ollama pull <model>. Experiment with different models to find the best fit for your project.
ModelSizeBest forCommand
Llama 3.1 8B4.7 GBGeneral purpose (our demo default)ollama pull llama3.1
Llama 3.2 3B2.0 GBFast responses, lower RAMollama pull llama3.2:3b
Mistral 7B4.1 GBStrong general quality, Apache 2.0 licenseollama pull mistral
Phi-3 Mini2.2 GBSmallest model that’s still usefulollama pull phi3:mini
DeepSeek-R1 7B4.7 GBReasoning and analysis tasksollama pull deepseek-r1:7b
Qwen 2.5 7B4.7 GBStrong multilingual supportollama pull qwen2.5
Gemma 2 9B5.4 GBGoogle’s open model, great qualityollama pull gemma2
CodeLlama 7B3.8 GBCode generation and analysisollama pull codellama
Start with Llama 3.1 (what we demoed). If your laptop is slow or has less than 8 GB RAM, try Llama 3.2:3b or Phi-3 Mini.

RAG frameworks

RAG (Retrieval Augmented Generation) is the technique we used in the demo — the AI retrieves relevant data before answering, so it cites real facts instead of hallucinating.

LlamaIndex

Easiest RAG setup, great docs, what we used

LangChain

Most popular, huge ecosystem, lots of integrations

Haystack

Search-focused RAG, great for document Q&A

DSPy

Programmatic prompting, academic-grade optimization

RAGFlow

Visual RAG pipeline builder with built-in UI

Docling

Document parsing for RAG — converts PDF, DOCX, PPTX, HTML, images to Markdown/JSON
Stick with LlamaIndex for this hackathon — it’s what the demo uses, so you can build on top of the existing code without starting from scratch. Pair it with Docling if you need to parse complex PDFs, PowerPoints, or scanned documents.

Web UI frameworks

Judges want to see a working demo. These frameworks let you build a polished web interface in Python — no JavaScript needed.

Gradio

Chat interfaces, ML demos (what we used)

Streamlit

Data dashboards, multi-page apps

Chainlit

Chat-focused apps with auth and history

Panel

Complex data dashboards and visualizations

Mesop

Google’s new Python web UI framework

NiceGUI

Full web apps with more UI control
Use Gradio if you’re building a chat/Q&A interface (fork our Step 3 or Step 5 code). Use Streamlit if you’re building a data exploration dashboard.

Vector databases

The demo uses LlamaIndex’s in-memory vector store, which works great for small-to-medium datasets. If your project needs persistent storage or handles larger data, consider a dedicated vector database.

ChromaDB

Simplest to set up, in-memory or persistent, great for hackathons

Faiss

Fastest local search, Facebook/Meta, pure performance

Weaviate

Full-featured, hybrid search, great API

Qdrant

Rust-based, fast, good filtering support

Milvus

Enterprise-grade, handles billions of vectors
For this hackathon, you probably don’t need a separate vector database. The in-memory store in LlamaIndex handles thousands of documents just fine. Consider ChromaDB only if you need data to persist between app restarts.

Agent frameworks

Want your AI to do more than answer questions? Agent frameworks let AI plan and execute multi-step tasks — like researching a topic, analyzing data, and generating a report.

CrewAI

Multi-agent teams with roles and tasks

AutoGen

Microsoft’s multi-agent conversation framework

Agno

Lightweight, fast agent framework

Smolagents

HuggingFace’s simple agent library

Semantic Kernel

Microsoft, works with Python and .NET

LangGraph

LangChain’s graph-based agent orchestration
Agents are powerful but can be unpredictable. For a hackathon demo, a well-tuned RAG pipeline (like our demo) is often more reliable and impressive than a brittle agent chain. Add agents only if your use case truly needs multi-step reasoning.

Free deployment and hosting

Ship your project so judges (and the world) can use it. All of these have free tiers that are more than enough for a hackathon.
PlatformBest forFree tierURL
Hugging Face SpacesGradio/Streamlit appsUnlimited public spaceshuggingface.co/spaces
Streamlit CloudStreamlit apps with GitHub integration1 free appstreamlit.io/cloud
RenderWeb services, APIs, databases750 hours/monthrender.com
RailwayFull-stack deployments$5 credit/monthrailway.app
VercelFrontends, serverless functionsGenerous free tiervercel.com
GitHub PagesStatic sites, documentationUnlimitedpages.github.com
ReplitFull dev environment + deploymentFree tier availablereplit.com
Our demo runs Ollama locally, which won’t work on most cloud platforms. For deployment, you’ll need to swap the local LLM for a cloud API (HuggingFace Inference, Groq, Together AI) or use a platform that supports custom containers.

Useful Python libraries

These are the most common libraries you’ll want to pip install during the hackathon, organized by what you’re trying to do.

Data analysis and visualization

LibraryWhat it doesInstall
pandasData manipulation and analysispip install pandas
matplotlibStatic charts and graphspip install matplotlib
plotlyInteractive charts and dashboardspip install plotly
seabornStatistical visualizationspip install seaborn
altairDeclarative visualization (works great with Streamlit)pip install altair

File parsing

LibraryWhat it doesInstall
pypdfRead and extract text from PDFspip install pypdf
python-docxRead and write Word documentspip install python-docx
openpyxlRead and write Excel filespip install openpyxl
doclingAdvanced document parsing (PDF, DOCX, PPTX, HTML, images) — RAG-optimized with layout understanding and OCRpip install docling
beautifulsoup4Parse HTML and scrape web pagespip install beautifulsoup4

APIs and web

LibraryWhat it doesInstall
requestsMake HTTP requests (API calls, web scraping)pip install requests
fastapiBuild REST APIs quicklypip install fastapi uvicorn
pydanticData validation and settings managementpip install pydantic
httpxModern async HTTP clientpip install httpx

AI and ML

LibraryWhat it doesInstall
transformersHuggingFace model librarypip install transformers
sentence-transformersEmbeddings and semantic searchpip install sentence-transformers
scikit-learnTraditional ML algorithmspip install scikit-learn
openaiOpenAI API client (also works with compatible APIs)pip install openai

Learning resources

Get up to speed quickly with these resources. Prioritize the ones marked with a star — they’re the most immediately useful for this hackathon.

RAG and LLM applications

Model benchmarks and comparisons

Curated lists

Build docs developers (and LLMs) love