-
Notifications
You must be signed in to change notification settings - Fork 357
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
My new branch #15
Open
adeelfeb
wants to merge
21
commits into
safak:starter
Choose a base branch
from
adeelfeb:my-new-branch
base: starter
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
My new branch #15
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Documented the differences between CommonJS (CJS) and ES Modules (ESM). Explained why conflicts occur when mixing module.exports and export default. Provided best practices for choosing and resolving module system usage. Included examples for PostCSS configuration in both CJS and ESM formats. This message uses your preferred emoji style for better readability and engagement!
- Implemented dynamic routes for homepage, dashboard, and chat pages - Integrated `RootLayout` and `DashboardLayout` for consistent layout structure - Added sign-in and sign-up routes using Clerk’s `SignIn` and `SignUp` components - Implemented automatic redirection to `/home` from the root path - Set up nested routes for authenticated users, with dynamic chat pages - Conditional rendering of components based on user authentication state using Clerk - Styled components with Tailwind CSS for better UI consistency and responsiveness
- Imported the `Link` component from `react-router-dom` in the ChatList component. - Ensured that navigation links work correctly in the ChatList component for routing.
- Added `flex` and `flex-col` for column orientation. - Styled `<hr>` with `opacity-10` and `mt-2` for low opacity and margin. - Improved typography and link styles with Tailwind classes. - Refined Pro upgrade section using `flex-col` and spacing utilities. - Ensured a clean and responsive layout with consistent spacing.
- Ensured the main content spans the full height and width of the page using `min-h-screen` and `w-full`. - Centered the content both vertically and horizontally using flexbox (`flex justify-center items-center`). - Updated class names conditionally to apply centering logic for specific routes (`/home`, `/sign-in`, `/sign-up`). - Enhanced the layout of the page to ensure content is always centered regardless of screen size. - Improved the responsiveness of the layout for different screen sizes.
- Added a fancy input box at the bottom with a modern design. - Styled the input box with a blue send button and smooth transitions. - Incorporated a toggle select element with a more polished look, including hover and focus effects. - Updated layout to ensure input box is positioned slightly higher from the bottom. - Improved accessibility with visual focus indicators and user-friendly interactions.
- Implemented auto-scrolling for chat body when messages exceed container height - Adjusted layout of chat header and input area for better UI - Ensured chat box selection is displayed on the right side - Added buttons for box selection functionality - Enhanced styling and layout for better user experience
- Implemented custom scrollbar with a unique class name `.custom-scrollbar` to avoid conflicts. - Styled the scrollbar track, thumb, and hover effects with custom colors. - Added custom arrows (up and down) to the scrollbar with hover effects for better user interaction. - Applied the custom scrollbar to the messages container with dynamic visibility based on message count.
…he right in the input section
- Managed messages state in the parent component (`ChatPage`) using `useState`. - Passed `setMessages` as a prop to `ChatInput` to update the messages array. - Modified `ChatInput` to handle both text input and image upload, and update messages on submit. - Updated `ChatBody` to correctly display both text and images from the `messages` array. - Ensured smooth scrolling and layout adjustments in the `ChatBody` component. This ensures proper handling of text and image messages in the chat interface, with state management through the parent component.
- Added bottom padding to ChatBody to prevent overlap with the input box. - Adjusted ChatInput component to be fixed at the bottom with proper shadow for separation. - Ensured ChatBody is centered and occupies the available space, improving layout consistency. - Updated the `height` calculation for both components to maintain proper spacing and positioning.
…and Cloudinary storage 🏞️. 🔧 Added upload route in backend with authentication parameters for ImageKit 🔐, and enhanced frontend UI for handling file uploads 🖼️. ⚙️ Fixed .env variable loading and added necessary configurations for image handling 🌍. 💻 Integrated backend API for seamless image upload and retrieval 🔄.
Updated handleInputSubmit: Added dynamic payload handling to support conversations with or without images. Decoupled image.aiData dependency to gracefully handle missing data. Improved error resilience and streamlined logic for better scalability. Refactored generateContentWithRetry: Enhanced retry logic for more robust API calls. Adjusted to dynamically handle prompts with optional image URLs. Improved Image Data Handling: Simplified mimeType extraction to only include the file type. Ensured clean data propagation from upload to dashboard for AI readiness. 🔧 Debugging Improvements: Added meaningful logging for better debugging visibility (e.g., payload structure). 💾 Result: Supports flexible AI conversations with or without image input, ensuring cleaner, more reliable data flow.
…e flow 💬 - Enhanced `startChatWithMessage` for cleaner image handling and error management 🖼️⚡ - Refined `handleInputSubmit` with improved text and image validation ✅🖋️ - Added logging for better debugging and flow tracking 🔍 - **Session management (chat history handling) still pending** ⏳ #chat #refactor #error-handling #image-handling #ui #ai
- Added `onClick` handler to the outer div, focusing the cursor on the input field when clicked. - Ensured that input field is focused when interacting with the chat input area. - Updated the chat flow to allow sending messages with or without uploaded images. - **Note**: Session management for chat history is not yet implemented in this commit.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.