Perplexica/ui
haddadrm 136063792c Discover Page Optimization
Restructured the Discover page to prevent the entire page from
refreshing when selecting categories or updating settings

1. Component Separation
-Split the page into three main components:
-DiscoverHeader: Contains the title, settings button, and category navigation
-DiscoverContent: Contains the grid of articles with its own loading state
-PreferencesModal: Manages the settings modal with temporary state

2. Optimized Rendering
-Used React.memo for all components to prevent unnecessary re-renders
-Each component only receives the props it needs
-The header remains stable while only the content area updates

3. Improved Loading States

3.1. Added separate loading states:
-Initial loading for the first page load
-Content-only loading when changing categories or preferences
-Loading spinners now only appear in the content area when changing
categories

3.2. Better State Management
-Main state is managed in the parent component
-Modal uses temporary state that only updates the main state after saving
-Clear separation of concerns between components

These changes create a more polished user experience where the header
and sidebar remain stable while only the content area refreshes when
needed. The page now feels more responsive and app-like, rather than
having the entire page refresh on every interaction
2025-02-25 23:27:56 +04:00
..
app Discover Page Optimization 2025-02-25 23:27:56 +04:00
components Made enhancements to the library interface! 2025-02-25 13:30:35 +04:00
lib Add DeepSeek and LMStudio providers 2025-02-25 08:53:53 +04:00
public Initial commit 2024-04-09 16:21:05 +05:30
.env.example feat(app): revert port & network changes 2024-05-13 19:58:17 +05:30
.eslintrc.json Initial commit 2024-04-09 16:21:05 +05:30
.gitignore Initial commit 2024-04-09 16:21:05 +05:30
.prettierrc.js Initial commit 2024-04-09 16:21:05 +05:30
next.config.mjs Initial commit 2024-04-09 16:21:05 +05:30
package-lock.json Add DeepSeek and LMStudio providers 2025-02-25 08:53:53 +04:00
package.json feat(package): bump version 2025-02-15 12:12:57 +05:30
postcss.config.js Initial commit 2024-04-09 16:21:05 +05:30
tailwind.config.ts update(ui): remove light-300 color level 2024-05-28 10:55:52 +08:00
tsconfig.json Add DeepSeek and LMStudio providers 2025-02-25 08:53:53 +04:00
yarn.lock Add DeepSeek and LMStudio providers 2025-02-25 08:53:53 +04:00