tanyar09 c0f9d19368 feat: Implement photo search functionality with filtering and tagging support
This commit introduces a comprehensive photo search feature in the application, allowing users to search photos by various criteria including name, date, and tags. The API has been updated to support these search parameters, returning results that match the specified filters. Additionally, new endpoints for managing tags have been added, enabling users to add and remove tags from multiple photos. The frontend has been enhanced with a user-friendly interface for search inputs and results display, improving overall usability. Documentation and tests have been updated to reflect these new features and ensure reliability.
2025-11-03 14:27:27 -05:00
..
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00
2025-10-31 12:10:44 -04:00

PunimTag Frontend

React + Vite + TypeScript frontend for PunimTag.

Setup

cd frontend
npm install

Development

Start the dev server:

npm run dev

The frontend will run on http://localhost:3000

Make sure the backend API is running on http://127.0.0.1:8000

Default Login

  • Username: admin
  • Password: admin

Features (Phase 1)

  • Login page with JWT authentication
  • Protected routes with auth check
  • Navigation layout (left sidebar + top bar)
  • Dashboard page (placeholder)
  • Search page (placeholder)
  • Identify page (placeholder)
  • Auto-Match page (placeholder)
  • Tags page (placeholder)
  • Settings page (placeholder)

Project Structure

frontend/
├── src/
│   ├── api/          # API client and endpoints
│   ├── components/   # React components
│   ├── hooks/        # Custom React hooks
│   ├── pages/        # Page components
│   ├── App.tsx       # Main app component
│   ├── main.tsx      # Entry point
│   └── index.css     # Tailwind CSS
├── index.html
├── package.json
├── vite.config.ts
└── tailwind.config.js