-
-
Notifications
You must be signed in to change notification settings - Fork 4
Price Filters #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
- Added new Price filter card with 3 options: All Prices, Free Only, Premium Only - Implemented filtering logic based on minimum platform price - Integrates seamlessly with existing search and type filters - No backend API changes required
…emplate binding; ensure paid-only/free-only filtering
Replace arrow functions with proper ProxyServerOptions objects for devProxy configuration
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds price filtering functionality to the browse page, allowing users to filter extensions by pricing (free vs paid). Additionally, it includes improvements to the development proxy configuration to support switching between local and remote API targets via environment variables.
- Adds a price filter slider to the browse page that toggles between showing only free or only paid extensions
- Implements helper functions
getMinPriceandisFreeto determine extension pricing based on platform prices - Updates dev proxy configuration to use
DEV_API_TARGETenvironment variable for flexible API targeting
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| apps/frontend/src/pages/browse/index.vue | Adds price filtering logic with maxPrice field, getMinPrice and isFree helper functions, and price-based filtering in computed property |
| apps/frontend/src/components/ui/browse/Filters.vue | Implements price filter UI with range slider component and custom styling for slider thumb and track |
| apps/frontend/nuxt.config.ts | Updates dev proxy configuration to use DEV_API_TARGET environment variable with fallback to localhost |
| apps/frontend/.env.example | Documents the new DEV_API_TARGET environment variable with default value |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| const isFree = (extension: Extension): boolean => { | ||
| return getMinPrice(extension) === 0 | ||
| } |
Copilot
AI
Dec 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The isFree function is defined but never used in the codebase. Consider removing it or using it in place of the inline check at line 196 where 'minPrice === 0' is evaluated, which would improve code reusability and maintainability.
| target: process.env.DEV_API_TARGET?.replace(/\/$/, '') || 'http://localhost:8000', | ||
| changeOrigin: true, |
Copilot
AI
Dec 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The proxy target URL transformation is incomplete. The original target was 'http://localhost:8000/api' but now it's 'http://localhost:8000'. When proxying '/api' requests, the path '/api' will be appended to the target, resulting in 'http://localhost:8000/api' which matches the original behavior. However, if DEV_API_TARGET is set to 'https://blueprint.zip', requests to '/api/endpoint' will be proxied to 'https://blueprint.zip/api/endpoint', which may be incorrect if the API is actually at 'https://blueprint.zip/api'. Verify that this path handling is intentional and matches your API structure.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Ready to merge