- Added search input for filtering posts by keywords.
- Implemented pagination controls for navigating through posts.
- Introduced order selector for sorting posts based on various criteria.
- Enhanced post item display with additional metrics (view count, like count, comment count).
- Added dropdown menu for post actions (edit, view, toggle privacy, delete).
- Integrated double confirmation for delete action.
- Updated user profile to support background image upload.
- Improved user security settings with better layout and validation.
- Refactored auth context to use useCallback for logout function.
- Added command palette component for improved command execution.
- Introduced popover component for better UI interactions.
- Implemented debounce hooks for optimized state updates.
- Updated localization files with new keys for improved internationalization.
- Added tailwind configuration for styling.
- Removed the old reset password form component and replaced it with a new implementation.
- Updated routing paths for login, registration, and reset password to be under a common auth path.
- Added new login and registration pages with corresponding forms.
- Introduced a common auth header component for consistent branding across auth pages.
- Implemented a current logged-in user display component.
- Enhanced the register form to include email verification and captcha.
- Updated translations for new and modified components.
- Refactored the navigation bar to include user avatar dropdown and improved menu structure.
- Introduced environment variables for database and email configurations.
- Implemented email verification code generation and validation.
- Added password reset feature with email verification.
- Updated user registration and profile management APIs.
- Refactored user security settings to include email and password updates.
- Enhanced console layout with internationalization support.
- Removed deprecated settings page and integrated global settings.
- Added new reset password page and form components.
- Updated localization files for new features and translations.
- Introduced new CSS files for rose, violet, and yellow themes with custom color variables.
- Implemented dark mode styles for each theme.
- Created a color data structure to manage theme colors in the console settings.
feat: implement image cropper component
- Added an image cropper component for user profile picture editing.
- Integrated the image cropper into the user profile page.
feat: enhance console sidebar with user permissions
- Defined sidebar items with permission checks for admin and editor roles.
- Updated user center navigation to reflect user permissions.
feat: add user profile and security settings
- Developed user profile page with avatar upload and editing functionality.
- Implemented user security settings for password and email verification.
feat: create reusable dialog and OTP input components
- Built a dialog component for modal interactions.
- Developed an OTP input component for email verification.
fix: improve file handling utilities
- Added utility functions for file URI generation.
- Implemented permission checks for user roles in the common utilities.
- Implemented Sidebar component with collapsible functionality.
- Added SidebarProvider for managing open state and keyboard shortcuts.
- Created SidebarTrigger, SidebarRail, and various sidebar elements (Header, Footer, Content, etc.).
- Integrated mobile responsiveness using Sheet component.
- Added utility hooks for mobile detection.
feat: create table component for structured data display
- Developed Table component with subcomponents: TableHeader, TableBody, TableFooter, TableRow, TableCell, and TableCaption.
- Enhanced styling for better readability and usability.
feat: implement tabs component for navigation
- Created Tabs component with TabsList, TabsTrigger, and TabsContent for tabbed navigation.
- Ensured accessibility and responsive design.
feat: add toggle group component for grouped toggle buttons
- Developed ToggleGroup and ToggleGroupItem components for managing toggle states.
- Integrated context for consistent styling and behavior.
feat: create toggle component for binary state representation
- Implemented Toggle component with variant and size options.
- Enhanced user interaction with visual feedback.
feat: add tooltip component for contextual information
- Developed Tooltip, TooltipTrigger, and TooltipContent for displaying additional information on hover.
- Integrated animations for a smoother user experience.
feat: implement mobile detection hook
- Created useIsMobile hook to determine if the user is on a mobile device.
- Utilized matchMedia for responsive design adjustments.
fix: Update Gravatar URL size and improve avatar rendering logic
style: Adjust footer margin for better layout consistency
refactor: Remove old navbar component and integrate new layout structure
feat: Enhance user profile page with user header component
chore: Remove unused user profile component
fix: Update posts per page configuration for better pagination
feat: Extend device context to support system theme mode
refactor: Remove unused device hook
fix: Improve storage state hook for better error handling
i18n: Add new translations for blog home page
feat: Implement pagination component for better navigation
feat: Create theme toggle component for improved user experience
feat: Introduce responsive navbar or side layout with theme toggle
feat: Develop custom select component for better UI consistency
feat: Create user header component to display user information
chore: Add query key constants for better code maintainability
- Refactored userLogin function to include captcha handling.
- Introduced getCaptchaConfig API to fetch captcha configuration.
- Added Captcha component to handle different captcha providers (hCaptcha, reCaptcha, Turnstile).
- Updated LoginForm component to integrate captcha verification.
- Created UserProfile component to display user information with avatar.
- Implemented getUserByUsername API to fetch user details by username.
- Removed deprecated LoginRequest interface from user model.
- Enhanced navbar and layout with animation effects.
- Removed unused user page component and added dynamic user profile routing.
- Updated localization files to include captcha-related messages.
- Improved Gravatar component for better avatar handling.
- Updated OIDC configuration to include additional fields in the UpdateOidcConfig method.
- Enhanced CommentService to include IsPrivate field in the comment DTO.
- Refactored comment components: renamed neo-comment to comment, and moved related files.
- Implemented new CommentInput and CommentItem components for better structure and readability.
- Removed obsolete files related to the old comment system.
- Added CSS animations for comment components to improve user experience.
- Added support for nested comments with reply functionality.
- Implemented like/unlike feature for comments and posts.
- Enhanced comment DTO to include reply count, like count, and like status.
- Updated comment and like services to handle new functionalities.
- Created new API endpoints for toggling likes and listing comments.
- Improved UI components for comments to support replies and likes with animations.
- Added localization for new comment-related messages.
- Introduced a TODO list for future enhancements in the comment module.
- Updated `getPostById` function to accept an optional authorization token.
- Modified `PostPage` to retrieve the token from cookies and pass it to the API call.
- Added smooth transition effects for background and text colors in `globals.css`.
- Cleaned up imports and formatting in `blog-home.tsx`.
- Refactored `blog-post.tsx` to use `MDXRemote` for rendering markdown content.
- Introduced `blog-comment.tsx` and `blog-post-header.client.tsx` components for better structure.
- Added a switch component for dark/light mode toggle in the navbar.
- Updated `Post` model to include a description field.
- Renamed `orderedBy` to `orderBy` and `reverse` to `desc` in ListPostsParams interface and related functions.
- Updated all usages of the sorting parameters in the post listing logic to reflect the new naming convention.
feat: add user-related API functions
- Implemented `getLoginUser` and `getUserById` functions in the user API to fetch user details.
- Enhanced user model to include `language` property.
feat: integrate next-intl for internationalization
- Added `next-intl` plugin to Next.js configuration for improved localization support.
- Removed previous i18n implementation and replaced it with a new structure using JSON files for translations.
- Created locale files for English, Japanese, and Chinese with basic translations.
- Implemented a request configuration to handle user locales and messages dynamically.
fix: clean up unused imports and code
- Removed unused i18n utility functions and language settings from device context.
- Cleaned up commented-out code in blog card component and sidebar.
chore: update dependencies
- Added `deepmerge` for merging locale messages.
- Updated package.json and pnpm-lock.yaml to reflect new dependencies.
fix: Update post fetching logic to use dynamic ID instead of hardcoded value
feat: Enhance layout with animated transitions using framer-motion
refactor: Remove old post and user page implementations, introduce new structure
feat: Implement sidebar components for blog home with dynamic content
feat: Create blog post component with wave header and metadata display
feat: Add responsive sidebar menu for navigation on mobile devices
chore: Introduce reusable sheet component for modal-like functionality
- Implemented `getPostById` API function to fetch a post by its ID.
- Refactored the main page to use a new `BlogHome` component for better organization.
- Added loading state and sorting functionality for posts on the blog home page.
- Integrated label fetching and display on the blog home page.
- Enhanced the blog card component with improved layout and statistics display.
- Updated the navbar to use dynamic configuration values.
- Added Docker support with a comprehensive build and push workflow.
- Created a custom hook `useStoredState` for managing local storage state.
- Added a new page for displaying individual posts with metadata generation.
- Removed unused components and files to streamline the codebase.
refactor: change import paths for DeviceContext and GravatarAvatar components
fix: adjust login form API call and update UI text for clarity
feat: add post API for listing posts with pagination and filtering options
feat: implement BlogCard component for displaying blog posts with enhanced UI
feat: create Badge component for consistent styling of labels and indicators
refactor: reintroduce DeviceContext with improved functionality for theme and language management
feat: define Label and Post models for better type safety and structure