Initial commit

This commit is contained in:
sriram
2026-08-10 10:54:58 +05:30
commit d97f14f7a1
147 changed files with 548306 additions and 0 deletions

55
frontend/README.md Normal file
View File

@@ -0,0 +1,55 @@
# Frontend - Kirana AI (React + Vite)
React 19 + Vite + Tailwind CSS v4 single-page app for browsing the catalog,
running semantic search, chatting with the RAG assistant, and (on
`/admin`) triggering ingestion of new brands.
Full setup steps are in the project documentation (`../docs/`). This file
is a fast local reference.
## Quick start
```bash
cd frontend
npm install
npm run dev
```
Open http://localhost:5173 - the Vite dev server proxies `/api/*` to
`http://localhost:8000` automatically (see `vite.config.js`), so make
sure the backend is running there first (`../backend/README.md`).
If your backend runs somewhere else, set `VITE_API_BASE_URL` in a local
`.env` file (copy `.env.example`) instead of relying on the proxy.
## Production build
```bash
npm run build # outputs to dist/
npm run preview # serve the production build locally to sanity-check it
```
## Pages
- `/` - Browse & Search (sidebar brand/category filters, product grid,
semantic search bar) with a toggle to **Ask AI**, a conversational RAG
chat panel that cites which catalog products it used for each answer.
- `/admin` - Trigger ingestion of a new brand and watch job status.
## Structure
```
src/
├── api/client.js # fetch wrapper for every backend endpoint
├── components/
│ ├── Sidebar.jsx / TopBar.jsx
│ ├── ProductCard.jsx / ProductGrid.jsx / ProductModal.jsx
│ ├── ChatPanel.jsx / ChatMessage.jsx
│ └── Atoms.jsx # Spinner, EmptyState
├── pages/
│ ├── HomePage.jsx
│ └── AdminPage.jsx
├── App.jsx # routes
├── main.jsx
└── index.css # Tailwind v4 theme tokens ("Kirana Ledger" palette)
```