Commit Graph
13 Commits
Author SHA1 Message Date
ersaayan bcf8652728 refactor: standardize string quotes and improve code readability across multiple files
- Updated string quotes from single to double in useRecommendationProfile.ts, client.ts, recommendationService.ts, and recommendations.ts for consistency.
- Enhanced error handling and logging in API client and recommendation service.
- Improved code structure and formatting for better readability and maintainability.
- Ensured consistent use of semicolons and spacing throughout the codebase.
2025-11-22 16:21:15 +03:00
ersaayan 73f9248e98 feat: Add smart package recommendations feature
- Implement onboarding modal with 3-step wizard
  - Category selection (up to 3 categories)
  - OS detection with manual override
  - Experience level selection

- Add intelligent recommendation engine
  - Hybrid scoring algorithm (category 40%, popularity 30%, OS 20%, preset 10%)
  - 7 curated categories with preset packages
  - Support for all platforms (Windows, macOS, Ubuntu, Debian, Arch, Fedora)

- Create recommendation UI components
  - RecommendationsSection with grid layout
  - Package cards with recommendation scores and reasons
  - User profile display with customization options

- Add localStorage-based profile management
  - Persistent user preferences
  - Automatic OS detection
  - Profile CRUD operations via useRecommendationProfile hook

- Implement API endpoint
  - POST /api/recommendations
  - GET /api/recommendations (query params)
  - Request validation and error handling

- Add full i18n support
  - English and Turkish translations
  - Onboarding flow, categories, and UI labels

- Update TypeScript config (lib: es2017 for array.includes)

Closes #1
2025-11-22 16:20:36 +03:00
Yusuf İpek af1ae5f1f8 feat: introduce API rate limiting for API routes and cap package query limits. 2025-11-20 15:55:43 +03:00
Yusuf İpek 48e2d2f05d feat: update Arch Linux script to use yay for package management and install yay if missing 2025-11-20 14:49:27 +03:00
Yusuf İpek 560e78cb96 feat: add AUR repository support for Arch Linux packages
- Extended database schema and models to include 'aur' as a valid repository type alongside 'official' and 'third-party'
- Added repository filter UI in package browser for Arch platform to distinguish between official and AUR packages
- Enhanced init-db script with migration system to track and apply schema changes automatically
2025-11-12 20:43:50 +03:00
Yusuf İpek 87f28e4da9 fix: correct SQL parameter index and improve API URL handling
- Fixed SQL UPDATE query parameter mismatch ($4 → $3) in Homebrew package fetcher
- Enhanced API_BASE_URL configuration to handle empty strings and trailing slashes, defaulting to '/api' for relative paths
2025-11-11 18:50:33 +03:00
Yusuf İpek cc82888c74 chore: remove debug endpoints and update configuration
- Removed debug-packages and test-sync API endpoints no longer needed
- Extracted sync status management into shared lib/sync/status module
- Updated Next.js config to remove deprecated experimental appDir flag
- Added port specification to production start script for consistency
2025-11-11 17:19:34 +03:00
Yusuf İpek b37373e807 feat: add authentication and configuration for sync operations
- Implemented SyncAuth to control sync access with server-only mode and secret key authorization
- Consolidated environment variables into single .env.example with improved sync configuration
- Protected all sync API endpoints (ubuntu, fedora, arch, homebrew, winget) with authentication checks
2025-11-11 16:41:37 +03:00
Yusuf İpek 40a34d7133 fix: correct Windows package installation script generation
- Fixed package identifier usage: now uses `name` field (winget ID) instead of `id` field throughout Windows script
- Enhanced error handling with exit code checking and consistent [OK]/[ERROR] prefixes for better visibility
- Standardized PowerShell string quotes to single quotes for consistency
2025-11-11 16:26:51 +03:00
Yusuf İpek 299e951368 feat: add comprehensive Windows PowerShell script usage instructions
- Enhanced ScriptPreview with detailed Windows-specific installation steps including execution policy handling and winget availability checks
- Added localization support for all script preview UI elements and Windows usage instructions
- Improved script generator with automatic unblocking, admin privilege warnings, and winget validation
2025-11-11 16:13:29 +03:00
Yusuf İpek 08f35aedbc feat: add multiple package sync sources and API integration
- Added undici dependency and implemented three package fetcher variants (simple text parsing, v2 with better error handling, and official repository sync)
- Integrated real API calls in PlatformSelector and PackageBrowser components with fallback to mock data
- Extended sync API route to support multiple data sources (debian-simple, ubuntu-simple, debian-official-v2, etc.) with platform initialization
2025-11-10 19:12:46 +03:00
Yusuf İpek 596bba0832 feat: add PostgreSQL database support and development scripts
- Added pg and @types/pg dependencies for PostgreSQL integration
- Created database testing and backend initialization scripts
- Changed dev server port to 3002 to avoid conflicts
2025-11-10 18:02:08 +03:00
Yusuf İpek bb854ea4d0 Initalize the project with front-end 2025-11-10 17:40:17 +03:00