Agentic multimodal tender compliance copilot for South African SMEs — built with Amazon Nova on AWS Bedrock. #AmazonNova
# TenderLens
Agentic multimodal tender compliance copilot for South African SMEs. Built with **Amazon Nova** on AWS Bedrock for the Amazon Nova AI Hackathon 2026.
**Problem:** South African SMEs spend days manually cross-referencing tender requirements against their company documents, often missing requirements and losing bids.
**Solution:** TenderLens ingests a tender RFP and evidence documents, uses Amazon Nova to extract every mandatory returnable, match evidence via multimodal embeddings, and produce a compliance matrix — in minutes, not days.
## Demo
```bash
# One command to start everything
./scripts/run_demo.sh
```
Then open **
http://localhost:5173**, upload the sample tender and evidence, and watch TenderLens analyse compliance in real time.
See scripts/demo_walkthrough.md for step-by-step instructions.
## Quick Start
### Backend
```bash
cd backend
pip install -e ".[dev]"
pytest tests/ -v # 52 tests
uvicorn app.main:app --reload --port 8000
```
### Frontend
```bash
cd frontend
npm install --legacy-peer-deps
npm run dev #
localhost
```
### Generate Sample Data
```bash
python scripts/generate_sample_data.py
```
### Integration Test (requires running backend + real Bedrock)
```bash
./scripts/integration_test.sh
```
## How It Works
1. **Ingest** — Upload tender PDF and evidence documents (PDF, PNG, JPG)
2. **Extract** — Amazon Nova 2 Lite extracts mandatory returnables from the tender via Converse API
3. **Embed** — Amazon Nova Multimodal Embeddings vectorizes all document pages (text + images, 1024-dim)
4. **Search** — For each requirement, find matching evidence via cosine similarity
5. **Decide** — Amazon Nova 2 Lite evaluates whether each requirement is complete, missing, or unclear
6. **Export** — Generate a compliance matrix (JSON), CSV checklist, and per-requirement evidence folders as a downloadable ZIP
## Architecture
| Component | Technology |
|-----------|-----------|
| **Reasoning** | Amazon Nova …