Commit Graph
24 Commits
Author SHA1 Message Date
Michael a9cb4e4ac5 feat: Implement dashboard page for item management and add/edit item modal. 2025-11-24 00:09:59 +01:00
Michael a26bd343ec feat: add comprehensive admin page for user, system settings, notification, and job management. 2025-11-23 23:24:35 +01:00
Michael 9637d77cef feat: Initialize core application structure with item tracking, price history, and notification channel management. 2025-11-23 23:17:52 +01:00
LogiFlow db06518d27 Merge branch 'main' into antigravity 2025-11-23 22:52:50 +01:00
Michael b5e3b44e5a feat: Implement scheduled item price tracking with AI analysis, core backend services, and a dashboard item management modal. 2025-11-23 22:48:01 +01:00
Michael c9a5f91dd2 feat: Introduce PriceHistoryModal component to display product price history, chart, and statistics. 2025-11-23 22:30:51 +01:00
Michael 308fcfb5e5 feat: add ItemCard component to display item details, prices, stock status, and actions with i18n support. 2025-11-23 21:40:17 +01:00
Michael f79f7d818c test: add TEST 2025 prefix to verify deployment 2025-11-23 21:31:34 +01:00
Michael 78b20e1f5c fix: add missing provider fields to newProfile initial state in Settings.jsx 2025-11-23 18:53:27 +01:00
Michael 0ccc2fd9fc feat: add login page with authentication functionality and favicons 2025-11-23 17:30:57 +01:00
Michael 8962853de8 feat: Introduce a comprehensive settings page for managing notification profiles, AI configuration, scraper behavior, and job schedules. 2025-11-23 17:13:35 +01:00
Michael cb9cdfcca0 feat: Implement search functionality with new frontend page, backend router, service, and database migration. 2025-11-23 14:54:22 +01:00
Michael fb447677b2 feat: Add AI service, database migration, French locale, and Marquee UI component. 2025-11-23 14:45:15 +01:00
Michael 8d124bf0f8 feat: Add initial database migration and UI label component, alongside frontend dependency installation. 2025-11-23 14:37:35 +01:00
Claude 1dcb2849e2 fix: Rename use-auth.js to use-auth.jsx for JSX support 2025-11-23 09:24:05 +00:00
Claude 1dd6d4dae1 feat: Add authentication system and admin panel
- Add User model with authentication
- Create JWT-based auth service
- Add login page with admin/admin default credentials
- Create admin panel with user management, settings, and site configuration
- Move settings to admin section (admin only)
- Change search page from multi-site checkboxes to single site selector
- Add logout functionality to layout
- Protect routes with authentication
2025-11-23 09:15:56 +00:00
Claude e1a9bd2657 feat: Hardcode French e-commerce websites configuration
- Remove ability to add/edit/delete search sites from settings UI
- Configure 16 French e-commerce sites with search URLs:
  - Discount: Gifi, Stokomani, B&M, Centrakor, L'Incroyable, Action, La Foir'Fouille
  - Grandes Surfaces: E.Leclerc, Auchan, Carrefour
  - E-commerce: Amazon France, Cdiscount
  - Électronique: Darty, Boulanger, Fnac
- Add automatic database seeding on application startup
- Add /api/search-sites/seed and /api/search-sites/reset endpoints
- Add cookie consent banner handling for sites that require it
- Simplify Settings page to only show site list with toggle for active state
2025-11-23 07:40:12 +00:00
Claude e9b7f17900 fix: SearXNG printf command + edit site modal
SearXNG:
- Use proper command list format instead of shell string
- Use printf with \n for proper newlines in limiter.toml
- Use exec to properly start the entrypoint

Edit Site Modal:
- Add Dialog component import
- Add siteModalOpen and editSiteData state
- Create proper modal with form for editing sites
- Modal opens when clicking edit button
- All site fields editable in modal
2025-11-22 13:45:34 +00:00
Claude 41ccfb6610 fix: SearXNG startup + always visible edit buttons
SearXNG:
- Use command override to rm -rf limiter.toml before recreating it
- This ensures any directory is removed before creating the file
- Mount only settings.yml, create limiter.toml dynamically

UI:
- Remove opacity-0 from site edit/delete buttons
- Buttons are now always visible (not just on hover)
- Added title attributes for accessibility
2025-11-22 13:38:37 +00:00
Claude 933cb2e66f feat: Improve search config + rename Dashboard + fix SearXNG
SearXNG:
- Fix tini not found error by calling entrypoint.sh directly
- Keep limiter.toml creation at container startup

UI Changes:
- Rename "Tableau de bord" to "Suivis produits" in navigation
- Move CSS selector configuration from item modal to Settings page
- Add price_selector field to search sites configuration
- Display CSS selector badge on site cards

Backend:
- Add price_selector column to SearchSite model and schemas
- Update init.sql with search_sites table and migration for existing DBs
2025-11-22 13:24:28 +00:00
Claude e8ccd69bff fix: SearXNG startup + update README logo and favicon
- Fix SearXNG limiter.toml directory issue by creating file at container
  startup via entrypoint command (rm -rf then recreate)
- Update README to use logo.svg instead of logo.png
- Redesign favicon.svg to match main logo style:
  - Same gold-to-green gradient background
  - Line gradient from white to green
  - Glow effect on chart line
  - Decorative dots at data points
  - Green arrow indicator
2025-11-22 13:15:31 +00:00
Claude 1116c3a648 feat: Add multi-site product search system with SearXNG integration
This commit adds a comprehensive product search feature that allows users
to search for products across multiple configured e-commerce sites.

Backend changes:
- Add SearXNG service to docker-compose for meta-search capability
- Add SearchSite model and Alembic migration with default sites
- Create searxng_service.py for search queries across sites
- Create light_scraper_service.py for fast HTTP-based extraction
- Create search_service.py orchestrator combining SearXNG + HTTP + Browserless
- Add API endpoints for search (/api/search) with SSE streaming
- Add CRUD endpoints for search sites (/api/search-sites)

Frontend changes:
- Add new /search page with real-time results display
- Create SearchResultCard component for product display
- Add Progress, Checkbox, and Badge UI components
- Update Settings page with search sites management section
- Add navigation link to search page
- Create new modern SVG logo with price-flow gradient design
- Update favicon to SVG format

The search system uses a hybrid approach:
1. SearXNG finds product URLs across configured sites
2. Light HTTP scraper attempts fast extraction
3. Falls back to Browserless for JavaScript-heavy sites
4. Results stream progressively via SSE
2025-11-22 11:03:48 +00:00
Claude d6c39252f2 feat: Rebranding PriceFlow + OpenRouter + i18n FR + Docker
Modifications majeures:

1. Rebranding: Pricecious → PriceFlow
   - Mise à jour du titre, logo et noms de projet

2. Intégration OpenRouter
   - Ajout comme provider IA avec filtres (chat, vision, code, reasoning, free)
   - Récupération dynamique des modèles et coûts
   - Service et router dédiés (/api/openrouter/models)

3. Internationalisation (i18n)
   - Installation i18next + react-i18next
   - Application entièrement traduite en français
   - Fichier de traduction: fr.json

4. Configuration Docker
   - docker-compose.yml avec réseau nginx_default (external)
   - PostgreSQL sur port 5488:5432
   - Browserless sur port 3012:3000
   - init.sql pour initialisation de la base de données
   - .env.example avec variables documentées

5. Favicon
   - Documentation ajoutée dans index.html pour faciliter le remplacement
2025-11-22 09:22:39 +00:00
LogiFlow afed10abc5 Add files via upload 2025-11-22 10:01:25 +01:00