[masterbots.ai] feat: onboarding bot profile variants #324
Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
Reviewer's Guide by SourceryThis PR implements profile variants for the onboarding bot feature in masterbots.ai. The changes primarily focus on enhancing the chatbot details component to support different display variants and improving the overall UI/UX of the bot profile pages. The implementation includes new mobile-responsive layouts, improved state management, and enhanced visual components. Updated class diagram for BrowseChatbotDetails componentclassDiagram
class BrowseChatbotDetails {
+Chatbot chatbot
+String variant
+Boolean isLoading
+String generateType
+String lastMessage
+generateBio(String type)
}
class ShareLink {
+String variant
}
BrowseChatbotDetails --> ShareLink : uses
note for BrowseChatbotDetails "Added variant property and state management for loading and message generation"
Updated class diagram for ChatChatbotDetails componentclassDiagram
class ChatChatbotDetails {
+String page
+String botName
+Boolean isWelcomeView
}
class containerVariants {
+String variant
}
ChatChatbotDetails --> containerVariants : uses
note for ChatChatbotDetails "Added page property and isWelcomeView logic"
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
Warning There were issues while running some tools. Please review the errors and either fix the tool’s configuration or disable the tool if it’s a critical failure. 🔧 eslint
apps/masterbots.ai/app/globals.cssOops! Something went wrong! :( ESLint: 8.57.1 ESLint couldn't find the config "next/core-web-vitals" to extend from. Please check that the name of the config is correct. The config "next/core-web-vitals" was referenced from the config file in "/apps/masterbots.ai/.eslintrc.json". If you still have problems, please stop by https://eslint.org/chat/help to chat with the team. WalkthroughThe changes in this pull request involve multiple components within the chatbot application, focusing on code formatting and structural enhancements. Key modifications include the addition of a Changes
Possibly related PRs
Suggested labels
Poem
Tip CodeRabbit's docstrings feature is now available as part of our Early Access Program! Simply use the command Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Hey @Bran18 - I've reviewed your changes and they look great!
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟡 Complexity: 1 issue found
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
There was a problem hiding this comment.
Actionable comments posted: 7
🧹 Outside diff range and nitpick comments (6)
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx (3)
Line range hint
56-64: Improve useEffect dependency handling.The effect's dependency array is incomplete, and the biome-ignore comment lacks proper explanation. The effect uses
getThreadNumandgetCategoryNamewhich depend on additional variables.Consider:
- Add missing dependencies
- Properly document why certain dependencies are excluded
- Or split the effect into smaller, more focused effects
- // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation> - useEffect(() => { - if (!activeCategory) { - getThreadNum() - } else { - getCategoryName() - } - }, [activeCategory, activeChatbot, session?.user]) + useEffect(() => { + if (!activeCategory) { + getThreadNum() + } + }, [activeCategory, session?.user, getThreadNum]) + + useEffect(() => { + if (activeCategory) { + getCategoryName() + } + }, [activeCategory, getCategoryName])
171-177: Eliminate duplicate Button components.The Follow button appears twice with identical props and styles. Consider extracting it into a reusable component.
const FollowButton = () => ( <Button variant="outline" size="sm" className="border-zinc-200 dark:border-zinc-100/50 text-zinc-500" > Follow </Button> );Also applies to: 198-202
Line range hint
67-218: Consider splitting the component for better maintainability.The component currently handles two distinct views (welcome and chatbot details) and contains duplicate responsive code. Consider:
- Splitting into separate
WelcomeViewandChatbotDetailsViewcomponents- Creating shared components for stats display
- Moving responsive logic into custom hooks
This would improve maintainability, reusability, and testing.
Would you like me to demonstrate how to refactor this component into smaller, more focused components?
apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx (1)
170-182: Refactor duplicated bio generation button into a reusable componentThe code for the bio generation button is duplicated between the desktop (lines 170-182) and mobile (lines 219-231) views. This duplication can make maintenance harder and increase the risk of inconsistencies. Consider extracting this code into a separate reusable component.
Example:
// Create a new component for the bio generation button function BioGenerationButton({ isLoading, generateType, onGenerate }) { return ( <Button disabled={isLoading && generateType === 'bio'} variant="ghost" onClick={() => onGenerate('bio')} className="ml-2 text-sm text-gray-500 border py-[2px] px-[8px] border-black dark:border-gray-400 hover:text-black dark:hover:text-gray-400" > {chatbot?.description ? 're-generate' : 'generate'} {isLoading && generateType === 'bio' ? ( <Loader className="w-4 h-4 ml-1" /> ) : ( <Wand2 className="w-4 h-4 ml-1" /> )} </Button> ) }Then replace the duplicated code with this component in both places.
Also applies to: 219-231
apps/masterbots.ai/components/routes/browse/browse-chat-messages.tsx (1)
63-70: Simplify conditional rendering whenchatbotis undefinedWhen
chatbotis not defined, the component renders an empty string'', which is unnecessary. In React, it's more common to rendernullor omit the else clause entirely for better readability.Apply this diff to simplify the rendering:
{chatbot ? ( <BrowseChatbotDetails chatbot={chatbot} variant={chatbot.name ? 'selected' : 'default'} /> -) : ( - '' -)} +{/* No need for the else clause when nothing is rendered */}Alternatively, you can use logical AND (
&&) for a more concise expression:{chatbot && ( <BrowseChatbotDetails chatbot={chatbot} variant={chatbot.name ? 'selected' : 'default'} /> )}apps/masterbots.ai/components/routes/thread/thread-share-link.tsx (1)
Line range hint
28-35: Remove unnecessary return statements incopyToClipboardfunctionThe
copyToClipboardfunction returns a cleanup function inside both thetryandcatchblocks. Since this function is an event handler and not a React effect, returning a cleanup function here has no effect and can be misleading.Apply this diff to remove the unnecessary returns:
navigator.clipboard.writeText(data.shortLink) setStatus('copied') const timer = setTimeout(() => setStatus('default'), 5000) - return () => clearTimeout(timer) + // No need to return a cleanup function here ... setStatus('error') const timer = setTimeout(() => setStatus('default'), 5000) - return () => clearTimeout(timer) + // No need to return a cleanup function hereAdditionally, if you intend to clear the timeout, consider using
useEffectto manage the timer lifecycle.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (5)
apps/masterbots.ai/app/b/[id]/page.tsx(3 hunks)apps/masterbots.ai/components/routes/browse/browse-chat-messages.tsx(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx(2 hunks)apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx(4 hunks)apps/masterbots.ai/components/routes/thread/thread-share-link.tsx(2 hunks)
✅ Files skipped from review due to trivial changes (1)
- apps/masterbots.ai/app/b/[id]/page.tsx
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx
Outdated
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx
Outdated
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx
Outdated
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (2)
apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx (2)
87-89: Enhance error handling with specific error messagesThe current error handling uses a generic message. Consider providing more specific error messages based on the error type.
Apply this diff:
} catch (error) { setIsLoading(false) - toast.error('Failed to generate content') + toast.error(error instanceof Error ? error.message : 'Failed to generate content') console.error('Bio generation failed:', error) }
122-357: Consider extracting reusable componentsThe UI section contains complex layouts that could be broken down into smaller, reusable components for better maintainability.
Consider extracting these components:
ChatbotHeader(mobile/desktop variants)BioSectionStatsDisplay(mobile/desktop variants)ActionButtons
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (1)
apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx(2 hunks)
🔇 Additional comments (4)
apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx (4)
25-28: LGTM! Well-structured interface definition.
The BrowseChatbotDetailsProps interface is clear and properly typed with optional properties.
58-60:
Ensure isLoading state is updated upon successful completion
The onFinish callback should reset the loading state.
Apply this diff:
async onFinish(message) {
setLastMessage(message.content)
+ setIsLoading(false)
}80-85:
Await the asynchronous append function for proper error handling
The append function needs to be awaited for proper error handling.
Apply this diff:
- return append({
+ await append({
id: nanoid(),
content: promptContent,
role: 'system',
createdAt: new Date()
})282-282:
Replace hardcoded follower counts with dynamic values
The follower count "3.2k" appears to be hardcoded. This should be derived from the chatbot data.
Apply this diff:
- Followers: <span className="text-gray-400">3.2k</span>
+ Followers: <span className="text-gray-400">{formatFollowerCount(chatbot.followers)}</span>Also applies to: 347-347
⛔ Skipped due to learnings
Learnt from: Bran18
PR: bitcashorg/masterbots#314
File: apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx:130-132
Timestamp: 2024-11-25T19:41:33.853Z
Learning: In the file `apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx`, the follower count displayed as "3.2k" is a temporary hardcoded value that will be replaced with real data from the database eventually.
AndlerRL
left a comment
There was a problem hiding this comment.
Is looking good however, there are details that are not aligned with the design:
- Check and compare the created component with the designs.
- Some states are not the right one. These are all the states available for the chatbot card.
- Use Card component instead to minimize div creation and nesting components.
- Compare User card with chatbot profile card, they must be the same except for some features that are not in the chatbot profile card.
This Bot card has to be used also for the onboarding. Bellow I will be sharing the components details.
Bot Profile Card (Thread Flow)
Bot Profile Card Component
Onboarding Bot Profile Card Component
The icons are from Lucide Icons. The name of the icons are the same as it is in figma. I added the missing icons on it. You can see the detailed list here. Therefore, there is no need to add the SVGs. Only if is not from lucide.
UpdatedOnboarding + Chat Bot profileBot Bot profile |
There was a problem hiding this comment.
Actionable comments posted: 6
🧹 Outside diff range and nitpick comments (5)
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx (1)
46-47: Provide an explanation for thebiome-ignorecommentThe
biome-ignorecomment suppresses the linter warning about exhaustive dependencies, but the<explanation>placeholder is not filled. Please provide a justification for ignoring the linter warning to maintain code clarity and assist future developers.apps/masterbots.ai/components/routes/chat/onboarding-chatbot-details.tsx (1)
91-94: Improve accessibility of the 'Follow' buttonThe 'Follow' button lacks an
aria-label, which can make it less accessible for users relying on screen readers. Consider adding anaria-labelto enhance accessibility.Apply this diff:
<Button variant="outline" size="sm" onClick={onFollow} className="border-zinc-200 dark:border-zinc-100/50 text-zinc-500" + aria-label="Follow chatbot" > Follow </Button>apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx (1)
51-56: Extract common styling patternsThe ring styling pattern is duplicated. Consider extracting it into a reusable utility class or constant.
Create a new utility in your styles:
// utils/styles.ts export const AVATAR_RING_STYLES = 'ring-2 ring-[#be16e8] dark:ring-[#82e46a]'Then use it in your components:
- 'ring-2 ring-[#be16e8] dark:ring-[#82e46a]' + AVATAR_RING_STYLESAlso applies to: 82-85
apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx (2)
99-99: Implement topic generation handlerThe onClick handler is empty with a TODO comment. This functionality needs to be implemented.
Would you like me to help create the topic generation implementation or create a GitHub issue to track this task?
136-177: Consider simplifying the follower/following section layoutThe current layout has deep nesting of flex containers which makes it harder to maintain. Consider simplifying the structure.
- <div className="h-[42px] flex-col justify-center items-center inline-flex"> - <div className="inline-flex items-center justify-center gap-3"> + <div className="flex items-center justify-center gap-6"> + <div className="flex flex-col items-center">
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (7)
apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/onboarding-chatbot-details.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx(1 hunks)apps/masterbots.ai/types/types.ts(1 hunks)
🔇 Additional comments (6)
apps/masterbots.ai/components/routes/chat/chat-chatbot-details.tsx (3)
70-73: Implement the handleNewChat function
The handleNewChat function currently only contains a console log statement. To enhance user experience, please implement the logic to initiate a new chat session when this function is called.
75-78: Implement the handleFollow function
The handleFollow function currently only logs to the console. Please implement the necessary logic to handle the follow action once the functionality is ready.
87-87: Replace hardcoded follower count with dynamic data
The followersCount is currently hardcoded to 3200. Once the following feature is implemented, please update this to use the actual follower count from the chatbot data.
apps/masterbots.ai/components/routes/browse/browse-chatbot-details.tsx (2)
42-44: Ensure isLoading state is updated upon successful completion
In the onFinish callback of the useChat hook, setIsLoading(false) is not called. This means the loading indicator may persist even after the operation has completed successfully.
Apply this diff to fix the issue:
async onFinish(message) {
setLastMessage(message.content)
+ setIsLoading(false)
}64-74: Await the asynchronous append function for proper error handling
The append function is asynchronous but is not awaited. This may cause the function to return before append completes, and any errors thrown might not be caught by the try...catch block.
Apply this diff to fix the issue:
const generateBio = async () => {
try {
setIsLoading(true)
setGenerateType('bio')
const promptContent = UserPersonalityPrompt('bio', [])
- return append({
+ await append({
id: nanoid(),
content: promptContent,
role: 'system',
createdAt: new Date()
})
} catch (error) {
setIsLoading(false)
toast.error('Failed to generate content')
console.error('Bio generation failed:', error)
}
}apps/masterbots.ai/types/types.ts (1)
236-264: LGTM
The newly added type definitions are clear and well-structured. They enhance type safety and improve code maintainability across the application.
apps/masterbots.ai/components/routes/chat/onboarding-chatbot-details.tsx
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx
Outdated
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx
Outdated
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx
Outdated
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Outside diff range and nitpick comments (6)
apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx (3)
8-18: Consider adding prop validationFor better type safety and runtime validation, consider adding prop-types or zod schema validation for the component props, especially for critical props like
onNewChatandonFollowthat trigger user actions.+import { z } from 'zod'; + +const propsSchema = z.object({ + botName: z.string().default('BuildBot'), + avatar: z.string().default(''), + description: z.string().optional(), + threadCount: z.number().default(0), + followersCount: z.number(), + isWelcomeView: z.boolean().default(true), + categoryName: z.string().optional(), + onNewChat: z.function(), + onFollow: z.function() +}); + export function OnboardingMobileChatbotDetails({ botName = 'BuildBot', avatar = '', description, threadCount = 0, followersCount = 3200, isWelcomeView = true, categoryName, onNewChat, onFollow -}: ChatbotDetailsProps) { +}: ChatbotDetailsProps) { + const validatedProps = propsSchema.parse({ + botName, + avatar, + description, + threadCount, + followersCount, + isWelcomeView, + categoryName, + onNewChat, + onFollow + });
20-20: Consider using dynamic height calculationThe fixed height calculation
h-[calc(100vh-196px)]might not work well across different mobile devices and orientations. Consider using a more flexible approach with CSS custom properties or dynamic calculation based on viewport height.-<div className="md:hidden h-[calc(100vh-196px)] flex items-center justify-center -translate-y-8"> +<div className="md:hidden min-h-[50vh] h-[calc(100vh-var(--header-height,196px))] flex items-center justify-center -translate-y-8">
27-34: Consider adding i18n support for static textThe welcome message and description contain hardcoded English text. Consider using an i18n library for better internationalization support.
+import { useTranslation } from 'next-i18n'; + +// Inside component +const { t } = useTranslation(); + -<h1 className="px-4 pt-2 text-xl font-bold text-zinc-950 dark:text-gray-300"> - Welcome to Masterbots! -</h1> -<p className="py-2 text-sm text-zinc-500 dark:text-zinc-500"> - Here you can create new threads and share them to your - network! Navigate with the sidebar and pick any bot of your - interest. -</p> +<h1 className="px-4 pt-2 text-xl font-bold text-zinc-950 dark:text-gray-300"> + {t('welcome.title')} +</h1> +<p className="py-2 text-sm text-zinc-500 dark:text-zinc-500"> + {t('welcome.description')} +</p>apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx (3)
37-39: Simplify ShareLink variant logic.The ternary operation can be simplified.
-<ShareLink - variant={variant === 'selected' ? 'active' : 'default'} -> +<ShareLink variant={variant === 'selected' && 'active'} />
83-83: Replace magic number with semantic variable.The calculation
calc(100%-200px)uses a magic number that should be defined as a semantic variable for better maintainability.+const AVATAR_SECTION_WIDTH = '200px'; -<div className="max-w-[calc(100%-200px)]"> +<div className={`max-w-[calc(100%-${AVATAR_SECTION_WIDTH})]`}>
131-142: Extract button styles to a reusable class.The button has multiple utility classes that could be extracted into a reusable class for better maintainability.
Consider creating a custom class in your CSS:
.follow-button { @apply h-[21px] px-3 py-0.5 rounded-md shadow border border-zinc-100/50 font-normal text-zinc-500 text-sm flex justify-center items-center gap-1; }Then simplify the button:
-<Button - variant="outline" - size="sm" - className={cn( - 'h-[21px] px-3 py-0.5 rounded-md shadow', - 'border border-zinc-100/50', - 'font-normal text-zinc-500 text-sm', - 'flex justify-center items-center gap-1' - )} -> +<Button + variant="outline" + size="sm" + className="follow-button" +>
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx(1 hunks)apps/masterbots.ai/components/ui/card.tsx(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx
🔇 Additional comments (6)
apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx (1)
13-13: Consider making followersCount configurable
The followersCount is hardcoded to 3200. This should be passed as a prop for better flexibility and maintainability.
apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx (5)
1-17: LGTM! Clean imports and well-structured component declaration.
The component follows React best practices with proper typing and clear prop definitions.
128-128: Hardcoded follower count is acceptable.
Based on previous discussions, the hardcoded follower count is temporary until the Followers/Following integration is complete.
59-61:
Add null check for chatbot name.
The component uses optional chaining for avatar but assumes name exists. Add proper null checking for consistency.
-alt={`${chatbot.name} avatar`}
+alt={`${chatbot?.name || 'Bot'} avatar`}90-95:
Replace array index key with a proper unique identifier.
Using array indices as keys can lead to rendering issues. Instead of ignoring the linter, generate a proper unique identifier.
-// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
-index
+`${chatbot?.name || 'bot'}-point-${index}`19-20: Verify background contrast for accessibility.
The gradient overlay might affect text readability. Consider adding sufficient contrast and testing with accessibility tools.
apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx
Show resolved
Hide resolved
apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx
Show resolved
Hide resolved
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
bun.lockbis excluded by!**/bun.lockb
📒 Files selected for processing (7)
apps/masterbots.ai/app/globals.css(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/onboarding-chatbot-details.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx(1 hunks)apps/masterbots.ai/lib/utils.ts(1 hunks)apps/masterbots.ai/package.json(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (4)
- apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx
- apps/masterbots.ai/components/routes/chat/onboarding-chatbot-details.tsx
- apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx
- apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx
🔇 Additional comments (4)
apps/masterbots.ai/app/globals.css (1)
306-306: LGTM! Consider verifying icon visibility across different contexts.
The increase in stroke-width from 1px to 1.25px for Lucide icons should improve visibility. However, since this is a global change, it's worth verifying the visual impact.
Let's check for any icon-specific overrides that might conflict with this change:
✅ Verification successful
Let me check the specific icon component where a different stroke-width is used:
LGTM! The stroke-width change is safe to apply
The increased stroke-width (1.25px) for Lucide icons won't conflict with other icon styles in the codebase. The only other stroke-width found is in a custom Arrow SVG component that uses its own specific value (1.52318px) and a hardcoded stroke color, making it independent of the Lucide icons styling.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Search for any specific icon stroke-width overrides that might conflict with the global setting
# Look for stroke-width declarations in CSS/SCSS files
rg -g '*.{css,scss}' 'stroke-width' --no-heading
# Look for inline stroke-width in SVG icons
rg -g '*.{tsx,jsx}' 'stroke-width=' --no-heading
Length of output: 230
Script:
#!/bin/bash
# Get context around the custom stroke-width in icons.tsx
rg -B 5 -A 5 'stroke-width="1.52318"' apps/masterbots.ai/components/ui/icons.tsx
Length of output: 328
apps/masterbots.ai/package.json (1)
54-54: Verify the significant version update of lucide-react
The update from ^0.297.0 to ^0.468.0 is a substantial version jump that might introduce breaking changes.
Let's verify the usage and potential impact:
Consider:
- Testing the application thoroughly after this update
- Reviewing the lucide-react changelog for breaking changes
- Ensuring all used icons are still available in the new version
✅ Verification successful
Let me analyze the usage of lucide-react icons in the codebase. The search results show that the project uses various icons from the library across multiple components, including basic UI icons like ChevronDown, Search, Eye, etc., and specific icons like Bot, MessageSquarePlus, etc.
Let me verify if these icons have remained consistent across versions by checking the lucide-react documentation.
Version update of lucide-react appears safe to proceed
Based on the analysis:
- All currently used icons are basic UI elements that have been stable across lucide-react versions
- The icons in use (
ChevronDown,Search,Eye,Bot, etc.) are core icons that haven't been subject to breaking changes - No error handling around icon imports suggests straightforward usage
- The codebase shows consistent icon import patterns across multiple components
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check lucide-react icon usage and changelog for breaking changes
# Check for icon imports from lucide-react
echo "Checking lucide-react icon usage:"
rg "from ['|\"]lucide-react['|\"]" -A 1
# Look for any potential breaking changes in package-lock or yarn.lock
echo "Checking for lock files:"
fd -t f ".*lock.*"
Length of output: 6481
Script:
#!/bin/bash
# Let's check the package.json to see the exact version change
echo "Checking package.json for version change:"
rg "\"lucide-react\":" apps/masterbots.ai/package.json -B1 -A1
# Let's also check for any potential icon renames or changes by looking for error handling around icon imports
echo "Checking for any error handling around icon imports:"
rg "lucide-react.*catch" -A 2
Length of output: 393
apps/masterbots.ai/lib/utils.ts (2)
322-324: Well-documented function with clear examples.
The JSDoc comments effectively communicate the function's purpose and expected output format.
325-330: Verify the usage in UI components.
Since this function is likely used for displaying metrics in the onboarding bot profile variants, let's verify its integration.
✅ Verification successful
Let me check the actual usage of the numberShortener function in these components to verify its integration.
Function is correctly integrated and used in UI components
The numberShortener function is properly integrated and used consistently across multiple UI components for formatting metrics:
- Used in onboarding views for displaying thread counts and follower counts
- Implemented in both mobile and desktop variants of chatbot details components
- Applied consistently for numerical metrics like threads (e.g.,
numberShortener(threadCount)) and followers (e.g.,numberShortener(followersCount))
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Find components that might use the numberShortener function
# Look for potential metric-related props or variables that could benefit from number formatting
# Search for potential usage or metric-related code
echo "Searching for potential usage patterns..."
rg -l "followers|views|likes|count|total|metrics|stats" "apps/masterbots.ai/components"
# Search for direct imports of the function
echo "Searching for imports of numberShortener..."
rg -l "numberShortener" "apps/masterbots.ai"
Length of output: 1449
Script:
#!/bin/bash
# Check the actual implementation in components that import numberShortener
echo "Checking onboarding-chatbot-mobile-details.tsx..."
rg -A 5 "numberShortener" "apps/masterbots.ai/components/routes/chat/onboarding-chatbot-mobile-details.tsx"
echo "\nChecking browse-chatbot-mobile-details.tsx..."
rg -A 5 "numberShortener" "apps/masterbots.ai/components/routes/browse/browse-chatbot-mobile-details.tsx"
echo "\nChecking browse-chatbot-desktop-details.tsx..."
rg -A 5 "numberShortener" "apps/masterbots.ai/components/routes/browse/browse-chatbot-desktop-details.tsx"
echo "\nChecking onboarding-chatbot-details.tsx..."
rg -A 5 "numberShortener" "apps/masterbots.ai/components/routes/chat/onboarding-chatbot-details.tsx"
Length of output: 3580
AndlerRL
left a comment
There was a problem hiding this comment.
LGTM! I had to do some updates on details regarding the new bot cards. Additionally, I found some regressions with the previously made onboarding cards... I made those fixes too. Merging!
NOTE: Make sure to review the designs in details. On
pixel perfectdesigns, every pixel counts, except for scales. Scales has a certain pattern and currently we are using the default TailwindCSS scaling in Figma designs. As being said, there could be default values from Tailwind but there is also custom values based on the MB design system. For now it is ok, I am currently arranging all the tokens as it should however, always do your best to check the details. Ask if uncertain 👍
* devops: force deploy * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * impr(masterbots.ai): add return to browse on bot thread page view (#204) * ✨ Added back button to thread details page * ⚡️ changed char to svg * feat: ai gen 404 image for custom 404 error page (#210) * ⚡️ added custom error page * ⚡️ clean up * fix(masterbots.ai): terms page visibility and access * feat(masterbots.ai): consistent og image style design and dynamic metadata (#215) * feat: added og api endpoint * feat: design og image for dark mode * fix: file formated * fix: amend og image to pick current theme color and adapt * feat: added custom metadata to thread page * feat: added custom metadata to bot page * fix: clean up * fix: move bg to a component * fix: move og-image design to a component * fix: use variable for URL * fix: to slug func * ⚡️ Move and clean up UrlToSlug * fix(masterbots.ai): zod dependecy * fix: type error * fix: type error for metadata * fix: clean and build fix --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * [masterbots.ai] fix: multi AI models guard (#235) * fix-guards + dom warning * fix-rename env var - vercel name * chore(masterbots.ai): update payment terms & conditions (#233) * fix: update terms * fix: building error * fix: update terms content * fix: rm the older part at the bottom * feat(masterbots.ai): pro subscription payment + wizard (#226) * feat: added free card * feat: added animation to the plan card * feat: added more plan card and referral code link * fix: clean up * wip: wizard * feat: wizard & modal * feat: plan Design theme and modal Header and Footer * feat: plan clean up * update * clean up * fix: rm plan comp on browse page * fix: wizard clean up * feat: succes & error modal * feat: loading comp * feat: added checkout comp * feat: set up stripe and context * wip: implementing subscription * feat: implementing subscription * feat: payment reciept * fix: clean up receipt * fix: modal not showing & shallow routing * fix: small fix * fix: receipt comp * fix: clean up * fix: shallow rerouting * feat: check if user has an active subscription * fix: coderabbit ob * fix: coderabbit ob * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: clean up * fix: clean up * fix: page restructuring and status on the receipt * fix: revamp receipt and structure * fix: rm unused file * fix: clean up * fix: update & clean up * fix: update * fix: rm the svg * fix: revamp formatSystemPrompts * fix: revamp msg to formatSystemPrompts * fix: update * fix: refactor the receipt page * fix: rm public key * fix: update * fix: update * fix: update * fix: code refactor for error and loading rendering * ref: calling secret keys from server * ref: receipt page and small fix * fix: rm file * fix(impr): subs & flow ux + cleanup * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * feat: set up stripe and context * wip: implementing subscription * fix: rm the svg * fix: replace secret with variable * fix: chat restructure * fix(update): chat restructure * fix(deployment error): can't find an icon or not exported * fix: deployment issues * fix: deployment issues * fix: deployment issues * fix: adjust design * fix: clean up * fix: clean up * fix: color var updaye * [coderabbitai] impr: update apps/masterbots.ai/components/stripe-element.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabitai] impr: update apps/masterbots.ai/components/succes-content.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: success close button * fix: bg image for yearly card * fix: move func to util * ref: receipt page function to use reac-use * fix: move depencies to the app * fix: clean up * ref: wizard to use radix dialog components * update * fix: coderabitai update --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * [masterbots.ai] fix: llama3 models (#236) * fix-guards + dom warning * fix-rename env var - vercel name * fix-changed PERPLEXITY-LLama model * [masterbots.ai] impr(fix): ui tweaks (#237) * fix(UI):varius UI fixes * fix(UI):varius UI fixes * fix(UI): Tailwind class corrections, conflict resolution, text alignent to the left * fix(UI):update * fix(masterbots.ai): payment feedbacks (#240) * fix: make the dialog content responsive * fix: free plan card adjusted * fix: update * fix: update receipt styles * fix: build error * fix: build error * fix: build error update * fix: update * fix: observation * fix(masterbots.ai): update env variable (#244) * feat: sitemap (#238) * feat: add redirection rules * fix: update all links with new shorten urls * fix: update all links with new shorten urls * feat: make folder structure according to sitemap * [coderabbitai] impr(masterbots.ai): update app/c/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: build error * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat: add sitemap and metagraph * fix: use original generateMetadata * fix: update page links * fix: show only filtered threads on page reload * fix: build error --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): show first question & answer in thread list (#246) * feat: add 'disabled' state to ChatAccordion * fix: show default question's answer in thread list * fix: use braces and create explicit statement blocks * fix: subscription mobile responsive tweaks (#245) * update * fix: update * fix: responsiveness * fix: update * fix: few clean up * fix: rm unused image * fix: rm unused image * fix(impr): models enum table migrations (#247) * impr(hasura): db tables * impr(hasura): db tables * fix(hasura): user permissions * impr(hasura): sql models enum migration * fix(hasura): models_enum pk * fix(hasura): ci/cd default regional log bucket * docs: bun to requirements (#250) Co-authored-by: b <b> * feat: next auth, email/pw strategy (#249) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * docs: mb sytem diagram v1.0a * feat(impr): next auth environment helper function (#251) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch * feat:protecting env --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * impr(masterbots.ai): sign up form + sign in session data * docs: claude3 project knowledge docs * fix(masterbots.ai): devMode conditional * chore(masterbots.ai): rm console.log * chore: upt default hardcoded gpt model * fix: toSlug imports * fix: typo * fix(hasura): seeds * chore(impr): MB seeds update and upgrade (#253) * wip: upt seeds * chore: rm alter and table creations * chore(impr): MB seeds update and upgrade * fix: set thread to private by default * fix: prompt row typo * chore(hasura): seeds update default thread publicity * fix(masterbots.ai): adjust arrow direction in thread list (#255) * feat(impr): Vercel AI SDK Update (#256) * chore:ai version upt * chore:ai version upt * upt-ai delete * upt-ai versions * upt-sdk-actions * upt-complete-sdk-3.3 + dev notes * upt-@anthropic-ai/sdk + MessageParam * Delete apps/masterbots.ai/apps/masterbots.ai/package.json * Delete apps/masterbots.ai/apps/masterbots.ai/package-lock.json * impr-convertToCoreMessages ternary * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * fix(masterbots): google signIn (#260) * fix(masterbots.ai): fix thread-component loop (#261) * fix:(masterbots.ai) add useScroll hook (#263) * fix:introducing Two-phase scroll * impr: new hook to handle scrolling * impr: useScroll + respo * feat(masterbots.ai): chat sidebar filtering (#264) * sidebar refactor with ai * fix: sidebar AI V - Prev Jun (#262) * fix:semistable * fix:stable v * impr:delete nonused component * fix: upt category filtering * fix typo --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: sidebar state * fix(masterbots.ai): logic typo * fix(masterbots.ai): ts typo --------- Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * fix(masterbots.ai): bot button redirect change (#265) * wip(masterbots.ai): seo data impr (#267) * wip: seo data impr * impr(chore): ga tags * feat: add chat publicity trigger (#258) * update * feat: design thread visibilty * fix: added the backend * fix: added the backend * fix: rm files * fix: few clean up * fix(masterbots): google signIn (#260) * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * fix: update * fix: add permission * fix: update query * fix(masterbots.ai): fix thread-component loop (#261) * feat: design thread visibilty * fix: added the backend * fix: few clean up * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * update * fix: update * fix: publicity toggle * fix: error catch in the functions * fix: observations * fix: design impr * fix: thread pop-up height * chore(masterbots.ai): log rm & app version upt --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(masterbots.ai): user messages ai refactor (#266) * feat:userMessages refactor + hooks and utils * upt:rm console.log * fix:rollback useAiChat hook * fix:rollback - actions * fix(masterbots.ai): sidebar trigger * chore(hasura: s --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * wip: browse sidebar * impr(masterbots.ai): browse sidebar (#270) * fix: browse layout * feat(masterbots.ai): browse sidebar * fix: browse sidebar link condition * chore: upt signup default profile pic * chore: seeds upt (#269) * wip: seeds upt * chore(hasura): seeds review * feat(hasura): add "is_approved" thread field + seeds * chore: mb-genql upt * fix(hasura): thread param permission * fix(masterbots.ai): typo * fix(masterbots.ai): allow svg content-type * fix: chat + browse layout * style: clean up * Seo data (#273) * fix: build error * feat: Add SEO data to the chat page * feat: add default image, if not found * feat: Add SEO data to the browse page * fix: generates the image with error, in api/og * Update route.tsx fix: generates the image with error, in api/og * impr(masterbots.ai): title impr prompt * impr(masterbots.ai): improve current features v2 (#274) * add-impr-chat-prompt-footer-header-disclaimer * add-impr-chat-prompt-footer-header-disclaimer * add-UI-upt * add-UI-upt * add-action-prompt * add-clickable-upt * add-clickable-upt * Masterbots/fix redirects (#275) * fix:avatar-redirects * fix:avatar-redirect * fix(masterbots.ai): upt components/ui/button.tsx Coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix:URL correction --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] feat: wordware api (#276) * feat: add wordware api + vercel sdk strategy * feat: add wordware api + vercel sdk * wordware describe feat * wordware run + interface * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): typo /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * doc: mb system diagram upt * wip: icl calls integrations * impr(masterbots.ai): permission for thread & user action mode (#281) * update * feat: added permissions & new column * fix: rm unnessecary files * fix: rm permission check * feat(masterbots.ai): create password recovery (#282) * feat:add-recovery-strategy * chore:add nodeemailer * upt:hasura * upt:hasura * upt:gmail service * feat(hasura): otp, token table + junction w/user + mb-genql gen * feat:add recovery password API * fix:ai suggestion + UX * feat:improve ux show password feat * chore:env sample * chore:useSetState * chore:roles --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] impr: WW API sanitize and keep alive (#284) * keep-alive + API sanitize + timeOut guard * impr streamAndValidateResponse fn * wip(masterbots.ai): impr createImprovementPrompt * style(masterbots.ai): chat loading states comments * feat(masterbots.ai): add admin mode to approve thread (#283) * feat:added mode toggle and approve btn * feat: added migration for user role * feat: user role flow implet * fix: impr admin approve process * fix: clean up * fix: toggle CTA changed * fix: update * fix: update * fix: observ * fix: obs clean up * fix: update * fix: clean up * impr(masterbots.ai): alpha metadata chatbot labels (#288) * wip: metadata chatbot labels * wip(masterbots.ai): chatbot metadata labels * impr(masterbots.ai): gen chatMetadata * impr: simplifying prompt defitions + biome.json base config * impr(masterbots.ai): recursive improved text prompt * style: code comments + eslint chk * impr: biome.json config * fix(masterbots.ai): conflicts typo fix * style(impr): cleanPrompt + followingQuestionsPrompt relocation & cleanup * doc: map system (simplified) * fix(masterbots.ai): sideBar updating URL (#286) * fix:sideBar updating URL * feat: coderabbit-ai suggestions * fix: Implement auto-expanding sidebar categories and chatbot highlighting based on URL * feat: optimize sidebar navigation with Link * feat: thread options (#287) * feat: added verified and label to the options * usethreadvisibility as context * feat: added option design and functions * fix: clean up * fix: update * fix: update * fix: obsv * fix: merge and update * fix: update the delete popup * fix: observ * fix: update * fix: delete thread flow * update * fix: update * fix: types * fix: chatbot not required * fix: testing * fix: rm bun.lock * fix: clean up * fix: update * fix(masterbots.ai): temp freezing next version --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] feat: email verification (#289) * feat: email verification * feat: email verification * feat: email verification * upt:build * feat: handle error redirection * chore:cron task * upt: cron blocking instead erasing * feat(hasura): create social following table. (#292) * feat(db): create social following table. * create user following and followers relationships. * fix(db): ensure users can only manage their own follow relationships. * feat(db): social following and user table permissions improvements. * feat(db): improving social following table with timestamp and idx. * impr(db): permissions and tracked object relationships. * impr(db): avoid self follow. * chore(masterbots.ai): guard WordWare for prod routing * [masterbots.ai] fix: public/private tag bg on dark mode (#294) * fix: tag bg * fix: text color * fix: browse page error * fix: debugging * fix: debugging * fix: debugging * fix: added func to generate short link * fix(hasura): upt user permissions (#296) * update user permission * fix: reverse the following table * fix(hasura): build error (#297) * fix: error build * fix: reverse select perm * [masterbots.ai] feat: thread list display + components comments for ai (#299) * merged from develop * feat:add new ui-thread-representation-browse * feat:add comments for ai - C * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add app theme colors effects * feat:add comments for ai - b/p * [masterbots.ai] feat: chatbot search tool v0.1a (#295) * wip: chatbot search tool * wip(impr): ww api + chat ui tweaks * fix: init sidebar load state * fix: nesting layout * fix: thread-popup ui header * wip(impr): chatbot tooling * impr: loading state + debug chatbot tools * wip(fix): nodejs context * fix(temp): rm edge runtime api config * [masterbots.ai] feat: reorganize navigation menu for mobile view (#298) * feat: reorganize navigation menu for mobile view * UI: add sideBar style * feat: add link profile and logout icon * Update profile-sidebar.tsx Tailwind class fix * [masterbots.ai] feat: UI + Logic Improvements (#301) * feat:impr responsive * feat:impr password strenght checker * feat:impr responsive * upt-build * feat:respomsive tweask * feat:back arrow aria label * fix:chat mobile layout * fix:code section * fix:chat pannel * fix:chatBot redirection * feat:restore appConfig header * [masterbots.ai] fix: restore desktop navigation link - browse section (#303) * fix:restore desktop navigation link - browse * fix:formating * feat:yellow combobox btn (JUN-REQUEST) * glowing effect variant * upt:removed /b navigation as original v * feat:powerup mode + provider * [masterbots.ai] fix(impr): browse and chat content search (#304) * feat:browse title and content search * feat:browse title and content search * fix:typo * impr:reusable non result component * feat:skeletons * feat:guard * fix:skeletons * fix:chat searching * fix: add accent colour --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * [masterbots.ai] impr: seo sitemap (#306) * chore: sitemap creation * chore: add description based on category * chore: update queries in services * chore: truncate text * impr: upt (browse)/[category]/[threadId]/sitemap.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: ai tools (#302) * wip: ai tools * fix: WW json regexp * impr: simplifying main ai call * wip(fix): chat component re-render + cleanup * impr(refactor): chat hooks * fix: ts build * fix: ts build * fix: ts typo * fix: typo * impr: ai feedbacks * [masterbots.ai] wip(impr): web search (#309) * impr: web search tool call * fix: colour values * fix: typo * impr: code suggestions * fix: class name typo * wip(fix): web search false positive response + webSearch context * fix: web search callback * fix: typo * feat: profile page (#300) * feat: user card * fix: update * merge develop && update * feat: user generate bio & favourite topic * fix: update user card * feat: added profile sidebar * fix: update * update * update * update * fix: fetch approved and public threads * fix: fetch approved and public threads * update * fix: clean up and update * update * make fetch user work with bio * update * update * design updating * update * update * fix: few changes * update * fix: design update * fix: footer in layout * fix: update * fix: resercation * update * profile upload * feat: move the cloudinary key to env * fix: layout * fix: layout update * [masterbots.ai] fix: shallow routing for category & chatbots for chat & profile page (#313) * update * feat: added shallow link to the sidebar link * update' * fix: routing and content fetching * fix:update on routing * fix:update * update * update * update * fix: clean up * update * update * [masterbots.ai] feat: update ChatChatbotDetails (#314) * feat: new bot profile - chat * chore: dev comments * chore: white bg bot avatar * feat: add skeleton bot profile * [masterbots.ai] feat: include custom settings options (#317) * feat:relocation of theme switch(jun) * feat: create font-size accessibility provider(jun) * feat: r-sidebar theme switcher relocation + skeleton * feat: impr add rem instead px * [masterbots.ai] feat: integrate drizzle ORM (#320) * feat: create mb-drizzle package initial structure * feat:(masterbots.ai) add drizzle endpoint + service * chore: include database url * chore: upt mb-drizzle * feat: refactor drizzle config + generations * chore: impr migrate * chore: add working drizzle connection + migrations * feat: add centralized actions * chore: add ai review recomendations * chore: webSearch feature flag + use cloudinary upload preset * fix: responsive sidebar fix * fix: ts chk build * fix: sidebar async call * fix: ts build * chore: typo * [masterbots.ai] fix: browse category navigation (#316) * update * fix: rm category * update * fix: pop up on the user threads * update * update clean up * update * fix: clean up * fix: clean up and update * fix: update * fix: popup on navigation * fix: update * update * update * update * clean up * update * merge * fix: hasura thread delete + user dup permissions (#330) * [masterbots.ai] feat: onboarding bot profile variants (#324) * add chatbot-details and browse-details variants * feat: add bio generation * feat: chat profile bg * chore: update bot profile designs * chore: remove internal padding from cardHeader component * impr: iconography + border thickness * fix: numberShortener util fn --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: user following (#319) * update * added follow user * update * fix: upt hasura metadata databases, public_social_following.yaml coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: upt masterbots.ai lib, utils.ts coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: user card * update * fix: permission * update * fix: added more column for chatbot followee * fix:foloow chatbot implementation * update * threads by following user/bots * update * update * update * update * update * update * update * update --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: new sonner (#334) * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * fix: overflow of the width of the sonner * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * chore: use hook sonner * refactor: changes according to coderabbitai * refactor: update use of sonner * chore:remove icons and use lucide icons * chore: Using Lucide Icons * chore: bun pkg mngr upt * Standardize url building using urlbuilders utility (#341) * fix: update url * fix: url update * update * [masterbots.ai] impr: og Image api dynamic to be useful without thread ID (#335) * update * fix: make OG image use default * fix: update * fix: update * fix: obs * fix: update * fix: added og to browse and chat * update * update * update * fix: provider types error * fix: updfate UUID * fix: update UUID * [masterbots.ai] docs: hook useSonner (#343) * chore: document hook useSonner * refactor: document hook useSonner, according coderabbit * impr: web search response (#310) * impr: web search response * refactor: extracting clickable generation logic * refactor: extracting clickable generation logic * fix: webSearch clickable text + reference links * chore: fix build * feat:(impr) stable version link to references format step 1 * feat:(impr) stable version link to references format step 2 --------- Co-authored-by: Bran18 <andreyfdez18@gmail.com> * [masterbots.ai] refactor: prelaunch ux/ui changes (#336) * refactor: replicate tooltip effect in desktop bot chatbot details * fix: add guard and removed re-render * fix: refactor mobile bot chatbot details * refactor: make chatPannel bigger * chore:add new bot card design + sidebar hover color * chore: delete public and private sw + icons * chore: include public + delete extra actions * chore: add sidebar bg * add sidebar new styles + lib fn * feat: add select bot * chore: cleaning * fix: build - removing BotMessageSquareIcon * fix: types/node version + node min ver req --------- Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> --------- Co-authored-by: Gabo Esquivel <contact@gaboesquivel.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Anouk Rímola <77553677+AnoukRImola@users.noreply.github.com> Co-authored-by: Trivium <25100787+Nemunas@users.noreply.github.com> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Luis Carrión <41096968+luighis@users.noreply.github.com> Co-authored-by: Marco Ledezma <marcoledezmacordero09@gmail.com> Co-authored-by: Bran18 <andreyfdez18@gmail.com> Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com>
* devops: force deploy * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * impr(masterbots.ai): add return to browse on bot thread page view (#204) * ✨ Added back button to thread details page * ⚡️ changed char to svg * feat: ai gen 404 image for custom 404 error page (#210) * ⚡️ added custom error page * ⚡️ clean up * fix(masterbots.ai): terms page visibility and access * feat(masterbots.ai): consistent og image style design and dynamic metadata (#215) * feat: added og api endpoint * feat: design og image for dark mode * fix: file formated * fix: amend og image to pick current theme color and adapt * feat: added custom metadata to thread page * feat: added custom metadata to bot page * fix: clean up * fix: move bg to a component * fix: move og-image design to a component * fix: use variable for URL * fix: to slug func * ⚡️ Move and clean up UrlToSlug * fix(masterbots.ai): zod dependecy * fix: type error * fix: type error for metadata * fix: clean and build fix --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * [masterbots.ai] fix: multi AI models guard (#235) * fix-guards + dom warning * fix-rename env var - vercel name * chore(masterbots.ai): update payment terms & conditions (#233) * fix: update terms * fix: building error * fix: update terms content * fix: rm the older part at the bottom * feat(masterbots.ai): pro subscription payment + wizard (#226) * feat: added free card * feat: added animation to the plan card * feat: added more plan card and referral code link * fix: clean up * wip: wizard * feat: wizard & modal * feat: plan Design theme and modal Header and Footer * feat: plan clean up * update * clean up * fix: rm plan comp on browse page * fix: wizard clean up * feat: succes & error modal * feat: loading comp * feat: added checkout comp * feat: set up stripe and context * wip: implementing subscription * feat: implementing subscription * feat: payment reciept * fix: clean up receipt * fix: modal not showing & shallow routing * fix: small fix * fix: receipt comp * fix: clean up * fix: shallow rerouting * feat: check if user has an active subscription * fix: coderabbit ob * fix: coderabbit ob * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: clean up * fix: clean up * fix: page restructuring and status on the receipt * fix: revamp receipt and structure * fix: rm unused file * fix: clean up * fix: update & clean up * fix: update * fix: rm the svg * fix: revamp formatSystemPrompts * fix: revamp msg to formatSystemPrompts * fix: update * fix: refactor the receipt page * fix: rm public key * fix: update * fix: update * fix: update * fix: code refactor for error and loading rendering * ref: calling secret keys from server * ref: receipt page and small fix * fix: rm file * fix(impr): subs & flow ux + cleanup * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * feat: set up stripe and context * wip: implementing subscription * fix: rm the svg * fix: replace secret with variable * fix: chat restructure * fix(update): chat restructure * fix(deployment error): can't find an icon or not exported * fix: deployment issues * fix: deployment issues * fix: deployment issues * fix: adjust design * fix: clean up * fix: clean up * fix: color var updaye * [coderabbitai] impr: update apps/masterbots.ai/components/stripe-element.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabitai] impr: update apps/masterbots.ai/components/succes-content.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: success close button * fix: bg image for yearly card * fix: move func to util * ref: receipt page function to use reac-use * fix: move depencies to the app * fix: clean up * ref: wizard to use radix dialog components * update * fix: coderabitai update --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * [masterbots.ai] fix: llama3 models (#236) * fix-guards + dom warning * fix-rename env var - vercel name * fix-changed PERPLEXITY-LLama model * [masterbots.ai] impr(fix): ui tweaks (#237) * fix(UI):varius UI fixes * fix(UI):varius UI fixes * fix(UI): Tailwind class corrections, conflict resolution, text alignent to the left * fix(UI):update * fix(masterbots.ai): payment feedbacks (#240) * fix: make the dialog content responsive * fix: free plan card adjusted * fix: update * fix: update receipt styles * fix: build error * fix: build error * fix: build error update * fix: update * fix: observation * fix(masterbots.ai): update env variable (#244) * feat: sitemap (#238) * feat: add redirection rules * fix: update all links with new shorten urls * fix: update all links with new shorten urls * feat: make folder structure according to sitemap * [coderabbitai] impr(masterbots.ai): update app/c/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: build error * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat: add sitemap and metagraph * fix: use original generateMetadata * fix: update page links * fix: show only filtered threads on page reload * fix: build error --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): show first question & answer in thread list (#246) * feat: add 'disabled' state to ChatAccordion * fix: show default question's answer in thread list * fix: use braces and create explicit statement blocks * fix: subscription mobile responsive tweaks (#245) * update * fix: update * fix: responsiveness * fix: update * fix: few clean up * fix: rm unused image * fix: rm unused image * fix(impr): models enum table migrations (#247) * impr(hasura): db tables * impr(hasura): db tables * fix(hasura): user permissions * impr(hasura): sql models enum migration * fix(hasura): models_enum pk * fix(hasura): ci/cd default regional log bucket * docs: bun to requirements (#250) Co-authored-by: b <b> * feat: next auth, email/pw strategy (#249) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * docs: mb sytem diagram v1.0a * feat(impr): next auth environment helper function (#251) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch * feat:protecting env --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * impr(masterbots.ai): sign up form + sign in session data * docs: claude3 project knowledge docs * fix(masterbots.ai): devMode conditional * chore(masterbots.ai): rm console.log * chore: upt default hardcoded gpt model * fix: toSlug imports * fix: typo * fix(hasura): seeds * chore(impr): MB seeds update and upgrade (#253) * wip: upt seeds * chore: rm alter and table creations * chore(impr): MB seeds update and upgrade * fix: set thread to private by default * fix: prompt row typo * chore(hasura): seeds update default thread publicity * fix(masterbots.ai): adjust arrow direction in thread list (#255) * feat(impr): Vercel AI SDK Update (#256) * chore:ai version upt * chore:ai version upt * upt-ai delete * upt-ai versions * upt-sdk-actions * upt-complete-sdk-3.3 + dev notes * upt-@anthropic-ai/sdk + MessageParam * Delete apps/masterbots.ai/apps/masterbots.ai/package.json * Delete apps/masterbots.ai/apps/masterbots.ai/package-lock.json * impr-convertToCoreMessages ternary * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * fix(masterbots): google signIn (#260) * fix(masterbots.ai): fix thread-component loop (#261) * fix:(masterbots.ai) add useScroll hook (#263) * fix:introducing Two-phase scroll * impr: new hook to handle scrolling * impr: useScroll + respo * feat(masterbots.ai): chat sidebar filtering (#264) * sidebar refactor with ai * fix: sidebar AI V - Prev Jun (#262) * fix:semistable * fix:stable v * impr:delete nonused component * fix: upt category filtering * fix typo --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: sidebar state * fix(masterbots.ai): logic typo * fix(masterbots.ai): ts typo --------- Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * fix(masterbots.ai): bot button redirect change (#265) * wip(masterbots.ai): seo data impr (#267) * wip: seo data impr * impr(chore): ga tags * feat: add chat publicity trigger (#258) * update * feat: design thread visibilty * fix: added the backend * fix: added the backend * fix: rm files * fix: few clean up * fix(masterbots): google signIn (#260) * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * fix: update * fix: add permission * fix: update query * fix(masterbots.ai): fix thread-component loop (#261) * feat: design thread visibilty * fix: added the backend * fix: few clean up * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * update * fix: update * fix: publicity toggle * fix: error catch in the functions * fix: observations * fix: design impr * fix: thread pop-up height * chore(masterbots.ai): log rm & app version upt --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(masterbots.ai): user messages ai refactor (#266) * feat:userMessages refactor + hooks and utils * upt:rm console.log * fix:rollback useAiChat hook * fix:rollback - actions * fix(masterbots.ai): sidebar trigger * chore(hasura: s --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * wip: browse sidebar * impr(masterbots.ai): browse sidebar (#270) * fix: browse layout * feat(masterbots.ai): browse sidebar * fix: browse sidebar link condition * chore: upt signup default profile pic * chore: seeds upt (#269) * wip: seeds upt * chore(hasura): seeds review * feat(hasura): add "is_approved" thread field + seeds * chore: mb-genql upt * fix(hasura): thread param permission * fix(masterbots.ai): typo * fix(masterbots.ai): allow svg content-type * fix: chat + browse layout * style: clean up * Seo data (#273) * fix: build error * feat: Add SEO data to the chat page * feat: add default image, if not found * feat: Add SEO data to the browse page * fix: generates the image with error, in api/og * Update route.tsx fix: generates the image with error, in api/og * impr(masterbots.ai): title impr prompt * impr(masterbots.ai): improve current features v2 (#274) * add-impr-chat-prompt-footer-header-disclaimer * add-impr-chat-prompt-footer-header-disclaimer * add-UI-upt * add-UI-upt * add-action-prompt * add-clickable-upt * add-clickable-upt * Masterbots/fix redirects (#275) * fix:avatar-redirects * fix:avatar-redirect * fix(masterbots.ai): upt components/ui/button.tsx Coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix:URL correction --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] feat: wordware api (#276) * feat: add wordware api + vercel sdk strategy * feat: add wordware api + vercel sdk * wordware describe feat * wordware run + interface * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): typo /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * doc: mb system diagram upt * wip: icl calls integrations * impr(masterbots.ai): permission for thread & user action mode (#281) * update * feat: added permissions & new column * fix: rm unnessecary files * fix: rm permission check * feat(masterbots.ai): create password recovery (#282) * feat:add-recovery-strategy * chore:add nodeemailer * upt:hasura * upt:hasura * upt:gmail service * feat(hasura): otp, token table + junction w/user + mb-genql gen * feat:add recovery password API * fix:ai suggestion + UX * feat:improve ux show password feat * chore:env sample * chore:useSetState * chore:roles --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] impr: WW API sanitize and keep alive (#284) * keep-alive + API sanitize + timeOut guard * impr streamAndValidateResponse fn * wip(masterbots.ai): impr createImprovementPrompt * style(masterbots.ai): chat loading states comments * feat(masterbots.ai): add admin mode to approve thread (#283) * feat:added mode toggle and approve btn * feat: added migration for user role * feat: user role flow implet * fix: impr admin approve process * fix: clean up * fix: toggle CTA changed * fix: update * fix: update * fix: observ * fix: obs clean up * fix: update * fix: clean up * impr(masterbots.ai): alpha metadata chatbot labels (#288) * wip: metadata chatbot labels * wip(masterbots.ai): chatbot metadata labels * impr(masterbots.ai): gen chatMetadata * impr: simplifying prompt defitions + biome.json base config * impr(masterbots.ai): recursive improved text prompt * style: code comments + eslint chk * impr: biome.json config * fix(masterbots.ai): conflicts typo fix * style(impr): cleanPrompt + followingQuestionsPrompt relocation & cleanup * doc: map system (simplified) * fix(masterbots.ai): sideBar updating URL (#286) * fix:sideBar updating URL * feat: coderabbit-ai suggestions * fix: Implement auto-expanding sidebar categories and chatbot highlighting based on URL * feat: optimize sidebar navigation with Link * feat: thread options (#287) * feat: added verified and label to the options * usethreadvisibility as context * feat: added option design and functions * fix: clean up * fix: update * fix: update * fix: obsv * fix: merge and update * fix: update the delete popup * fix: observ * fix: update * fix: delete thread flow * update * fix: update * fix: types * fix: chatbot not required * fix: testing * fix: rm bun.lock * fix: clean up * fix: update * fix(masterbots.ai): temp freezing next version --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] feat: email verification (#289) * feat: email verification * feat: email verification * feat: email verification * upt:build * feat: handle error redirection * chore:cron task * upt: cron blocking instead erasing * feat(hasura): create social following table. (#292) * feat(db): create social following table. * create user following and followers relationships. * fix(db): ensure users can only manage their own follow relationships. * feat(db): social following and user table permissions improvements. * feat(db): improving social following table with timestamp and idx. * impr(db): permissions and tracked object relationships. * impr(db): avoid self follow. * chore(masterbots.ai): guard WordWare for prod routing * [masterbots.ai] fix: public/private tag bg on dark mode (#294) * fix: tag bg * fix: text color * fix: browse page error * fix: debugging * fix: debugging * fix: debugging * fix: added func to generate short link * fix(hasura): upt user permissions (#296) * update user permission * fix: reverse the following table * fix(hasura): build error (#297) * fix: error build * fix: reverse select perm * [masterbots.ai] feat: thread list display + components comments for ai (#299) * merged from develop * feat:add new ui-thread-representation-browse * feat:add comments for ai - C * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add app theme colors effects * feat:add comments for ai - b/p * [masterbots.ai] feat: chatbot search tool v0.1a (#295) * wip: chatbot search tool * wip(impr): ww api + chat ui tweaks * fix: init sidebar load state * fix: nesting layout * fix: thread-popup ui header * wip(impr): chatbot tooling * impr: loading state + debug chatbot tools * wip(fix): nodejs context * fix(temp): rm edge runtime api config * [masterbots.ai] feat: reorganize navigation menu for mobile view (#298) * feat: reorganize navigation menu for mobile view * UI: add sideBar style * feat: add link profile and logout icon * Update profile-sidebar.tsx Tailwind class fix * [masterbots.ai] feat: UI + Logic Improvements (#301) * feat:impr responsive * feat:impr password strenght checker * feat:impr responsive * upt-build * feat:respomsive tweask * feat:back arrow aria label * fix:chat mobile layout * fix:code section * fix:chat pannel * fix:chatBot redirection * feat:restore appConfig header * [masterbots.ai] fix: restore desktop navigation link - browse section (#303) * fix:restore desktop navigation link - browse * fix:formating * feat:yellow combobox btn (JUN-REQUEST) * glowing effect variant * upt:removed /b navigation as original v * feat:powerup mode + provider * [masterbots.ai] fix(impr): browse and chat content search (#304) * feat:browse title and content search * feat:browse title and content search * fix:typo * impr:reusable non result component * feat:skeletons * feat:guard * fix:skeletons * fix:chat searching * fix: add accent colour --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * [masterbots.ai] impr: seo sitemap (#306) * chore: sitemap creation * chore: add description based on category * chore: update queries in services * chore: truncate text * impr: upt (browse)/[category]/[threadId]/sitemap.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: ai tools (#302) * wip: ai tools * fix: WW json regexp * impr: simplifying main ai call * wip(fix): chat component re-render + cleanup * impr(refactor): chat hooks * fix: ts build * fix: ts build * fix: ts typo * fix: typo * impr: ai feedbacks * [masterbots.ai] wip(impr): web search (#309) * impr: web search tool call * fix: colour values * fix: typo * impr: code suggestions * fix: class name typo * wip(fix): web search false positive response + webSearch context * fix: web search callback * fix: typo * feat: profile page (#300) * feat: user card * fix: update * merge develop && update * feat: user generate bio & favourite topic * fix: update user card * feat: added profile sidebar * fix: update * update * update * update * fix: fetch approved and public threads * fix: fetch approved and public threads * update * fix: clean up and update * update * make fetch user work with bio * update * update * design updating * update * update * fix: few changes * update * fix: design update * fix: footer in layout * fix: update * fix: resercation * update * profile upload * feat: move the cloudinary key to env * fix: layout * fix: layout update * [masterbots.ai] fix: shallow routing for category & chatbots for chat & profile page (#313) * update * feat: added shallow link to the sidebar link * update' * fix: routing and content fetching * fix:update on routing * fix:update * update * update * update * fix: clean up * update * update * [masterbots.ai] feat: update ChatChatbotDetails (#314) * feat: new bot profile - chat * chore: dev comments * chore: white bg bot avatar * feat: add skeleton bot profile * [masterbots.ai] feat: include custom settings options (#317) * feat:relocation of theme switch(jun) * feat: create font-size accessibility provider(jun) * feat: r-sidebar theme switcher relocation + skeleton * feat: impr add rem instead px * [masterbots.ai] feat: integrate drizzle ORM (#320) * feat: create mb-drizzle package initial structure * feat:(masterbots.ai) add drizzle endpoint + service * chore: include database url * chore: upt mb-drizzle * feat: refactor drizzle config + generations * chore: impr migrate * chore: add working drizzle connection + migrations * feat: add centralized actions * chore: add ai review recomendations * chore: webSearch feature flag + use cloudinary upload preset * fix: responsive sidebar fix * fix: ts chk build * fix: sidebar async call * fix: ts build * chore: typo * [masterbots.ai] fix: browse category navigation (#316) * update * fix: rm category * update * fix: pop up on the user threads * update * update clean up * update * fix: clean up * fix: clean up and update * fix: update * fix: popup on navigation * fix: update * update * update * update * clean up * update * merge * fix: hasura thread delete + user dup permissions (#330) * [masterbots.ai] feat: onboarding bot profile variants (#324) * add chatbot-details and browse-details variants * feat: add bio generation * feat: chat profile bg * chore: update bot profile designs * chore: remove internal padding from cardHeader component * impr: iconography + border thickness * fix: numberShortener util fn --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: user following (#319) * update * added follow user * update * fix: upt hasura metadata databases, public_social_following.yaml coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: upt masterbots.ai lib, utils.ts coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: user card * update * fix: permission * update * fix: added more column for chatbot followee * fix:foloow chatbot implementation * update * threads by following user/bots * update * update * update * update * update * update * update * update --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: new sonner (#334) * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * fix: overflow of the width of the sonner * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * chore: use hook sonner * refactor: changes according to coderabbitai * refactor: update use of sonner * chore:remove icons and use lucide icons * chore: Using Lucide Icons * chore: bun pkg mngr upt * Standardize url building using urlbuilders utility (#341) * fix: update url * fix: url update * update * [masterbots.ai] impr: og Image api dynamic to be useful without thread ID (#335) * update * fix: make OG image use default * fix: update * fix: update * fix: obs * fix: update * fix: added og to browse and chat * update * update * update * fix: provider types error * fix: updfate UUID * fix: update UUID * [masterbots.ai] docs: hook useSonner (#343) * chore: document hook useSonner * refactor: document hook useSonner, according coderabbit * impr: web search response (#310) * impr: web search response * refactor: extracting clickable generation logic * refactor: extracting clickable generation logic * fix: webSearch clickable text + reference links * chore: fix build * feat:(impr) stable version link to references format step 1 * feat:(impr) stable version link to references format step 2 --------- Co-authored-by: Bran18 <andreyfdez18@gmail.com> * [masterbots.ai] refactor: prelaunch ux/ui changes (#336) * refactor: replicate tooltip effect in desktop bot chatbot details * fix: add guard and removed re-render * fix: refactor mobile bot chatbot details * refactor: make chatPannel bigger * chore:add new bot card design + sidebar hover color * chore: delete public and private sw + icons * chore: include public + delete extra actions * chore: add sidebar bg * add sidebar new styles + lib fn * feat: add select bot * chore: cleaning * fix: build - removing BotMessageSquareIcon * fix: types/node version + node min ver req --------- Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> * [masterbots.ai] feat: continuous thread ui functionality (#340) * wip: continuos thread logic and functionality. * feat: updating parent thread functionality. * feat: continuous thread UI and finalize functionality. * fix: lowering resolveThreadId logic complexity. * Update apps/hasura/migrations/masterbots/1736934906237_set_fk_public_thread_parent_thread/down.sql Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update apps/masterbots.ai/lib/hooks/use-mb-chat.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: ts build --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] fix: refactored components - pre icl v3 (#348) * chore: add refactored components - pre icl v3 * chore: add navigation color + text-input color * fix: type * wip: header active state * fix: them toggle --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: icl v1a (#344) * wip: vercel ai sdk upt * wip: icl web feature * chore: icl hasura migrations, metadata and seeds * chore: genql gen * impr: chat opt separator render * impr: accordion chevron pos * impr: chat-list space * Fix observations from Jun (#353) * update * fix: update * fix: added empty state * fix: rm favourt and added card empty state * fix: hide sibe category without threads on user profile * fix: update * fix: update * [masterbots.ai] fix: reduce prompt input validation * fix: hasura moderator augmentedFrom msg prop * impr: ai prompt examples flow * fix: hasura moderator role thread upt permissions * [masterbots.ai] feat: chatbot following + thread highlight + bot thread page to blog (#337) * update * feat: added chatbot follow function to other component * update profile thread * thread highligh * thread highligh update * update * fix: thread blog * fix: follow chat bot * update * fix: observations * fix provider types issue * fix provider update * feat: update blog template * fix: rm p tag from list items * fix: merge * fix: rm parentid and continiue reading * update * update * merge * fix: generated types * update * updatd * update code * impr: profile page layout * fix: mg-genql gen ts --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] fix: init threads render + icl init cleanup (#354) * wip: fix init threads render + icl cleanup This fixes the following issues: 1. Reduced the amount of re-renders when sending the new data. 2. Clean up the ICL functions and types. 3. State management for the user-thread-panel. 4. Debug the re-rendering uissue that is replacing the main thread content. 5. Debug opening a new thread with the new ICL system. They show in the list but not returning the messages when opening it up. 6. Few code clean ups. * impr: thread list re-render in chat page * fix: initialMessages in useChat * fix: hasura moderator role thread upt permissions * impr: thread list re-render * fix: markdown pkg ts * fix: markdown pkg ts * fix: downgrade react-markdown (#358) * fix: downgrade react-markdown * fix: downgrade react-markdown * fix: markdown dep version + layout thread list ui * impr: gray-ish overlay bg rm * chore: console log rm --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: icl seeds v2 (#357) * chore: upt hasura icl seeds * chore: chat legacy table rm * chore(wip): icl seeds curation * chore: upt icl init seed pt2 * chore: upt icl init seed pt3 * chore: upt icl init seed pt3 * chore: upt icl init seed pt4 * fix: cat + chatbot seeds revision * chore: tag seeds note upt * fix: drop and create chatbot_domain table (#360) * fix: drop and create chatbot_domain table * fix: chatbot_domain permissions * fix: SQL typo * [masterbots.ai] feat: improve common components and features (#356) * fix: sidebar * feat: add DeepSeek integration * chore: wip accordions * fix: include popup accordion * chore: add shared accordion to thread list * fix: extra space * fix: extra space * chore: add tabs effect * chore: add colors based on routes * chore: add colors based on routes --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: useRouter import * [masterbots.ai] fix: sidebar category render (#362) * fix: sidebar category render * docs: toggleChatbotSelection * [hasura] chore: label + label_chatbot_category_domain dropping tables migration (#361) * fix: fetch chatbotDomain * [hasura] chore: rm wip example seed part * chore: rm legacy tables + fix getChatbotMetadata props (#363) * chore: rm legacy tables * fix: getChatbotMetadata * fix: chatbotMetadata ts * wip(refactor): icl init tags & categories fetch * chore: bun.lockb upt * fix: hotfix build error * impr: icl metadata requests v1 (#365) * wip: icl fetch + meta prompt impr * impr: sidebar paddings * wip: icl fetch + meta prompt impr * wip: icl fetch + meta prompt impr * impr: icl metadata request v2 (#366) * wip: icl fetch + meta prompt impr * fix: icl fetch + meta prompt impr * impr: icl output + prompts * chore: console.log rm * chore: console.log icl metadata devMode * [masterbots.ai] test: sytem prompt as user role * fix: show sidebar in profile (#364) * chore: clickable responses update * [masterbots.ai] refactor: use chat hook context + state management perf (#369) * chore: system prompt as system role * refactor: use-mb-chat to context * fix: mbchat provider location * impr: profile page scroll & footer position (#367) * update * fix: update * update * update * fix: profile page scroll and footer positioning * fix: profile sidebar * update * update * Revert "update" This reverts commit ef7ee8c. * Revert "Revert "update"" This reverts commit 553f82f. * Revert "Revert "Revert "update""" This reverts commit c645eca. * fix: profile page footer positioning * fix: visitor should be able to scroll through the categories * fix: profile page side bar * fix: rm loading when user not logged in * fix: update * [masterbots.ai] fix: clickable text feature (#372) * fix: accordion arrow * fix: clickable text formating * wip: fix thread load (#373) * wip: fix thread-list load * fix: continuous system prompt context * fix: render flickr + followup question logic impr * impr: prompt tags segmentation * chore: impr following question prompt * feat: public continue thread (#375) * refactor: integrating chatPannelHeader into chatPannel * chore: update browse-chat-message with shared accordion * chore: continue conversation + full conversations fix * fix: left align text * [masterbots.ai] fix: show appropriate bot cards in the user thread list (#368) * update * fix: update * update * update * fix: filter category & chatbot by userId on profile page * fix: hide empty chatbots * fix: followee permission error as moderator to follow and unfollow (#374) * update * fix: update * update * update * fix: permission issue for moderator when following other user * fix: shift on user card when loading or empty * update * [masterbots.ai] fix: isNewChat guard + continuous thread messages + power up prompts (#377) * fix: thread render at pop-up close * impr: getRouteType + chat layout * wip: isNewChat state * impr: prompt tags segmentation * fix: chat messages list render + open last according by default on new responses * impr: thread list render guard * feat(wip): isPowerUp mode * impr: memoizing getChatbotMetadata * fix: grabbing previous messages, continous chat * chore: add todo comment * impr: previous thread ui + coderabbitai observations * fix: previous conversation re-render * doc: useEffect biome-ignore * impr: deep obj compare for msg pairs * fix: ts build * fix: ts build * [masterbots.ai] refactor: useScroll hook (#376) * chore: refactor useScroll * chore: refactor useScroll * chore: refactor useScroll * Delete apps/masterbots.ai/lib/context/thread-context.tsx * chore: test commit * fix: import type * chore: add clearTimeout * chore: add destructuring * feat: update use-mb-scroll * feat: update thread component --------- Co-authored-by: Brandon fernandez <brandonfdez@Brandons-MacBook-Air.local> * [masterbots.ai] fix: chat stream render (#380) * fix: chat stream render * fix: typo * chore: chatbot prompts init config + active thread hotfixes (#378) * wip: chatbot prompts init config * wip: upt init config seeds, adding prompt configs * chore: upt init config seeds * fix: resetActiveThread guard * impr(wip): masterbot config prompt * chore: icl data curation, domain + category + sub-category * chore: init domain seeds curation * fix: moderator + user role table selection * impr: web prompt config + fix thread list render + code comments * fix: coderabbitai observations * [hasura] chore: upt user insert rows seed * fix: conflict fix --------- Co-authored-by: Gabo Esquivel <contact@gaboesquivel.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Anouk Rímola <77553677+AnoukRImola@users.noreply.github.com> Co-authored-by: Trivium <25100787+Nemunas@users.noreply.github.com> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Luis Carrión <41096968+luighis@users.noreply.github.com> Co-authored-by: Marco Ledezma <marcoledezmacordero09@gmail.com> Co-authored-by: Bran18 <andreyfdez18@gmail.com> Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Brandon fernandez <brandonfdez@Brandons-MacBook-Air.local>
* add chatbot-details and browse-details variants * feat: add bio generation * feat: chat profile bg * chore: update bot profile designs * chore: remove internal padding from cardHeader component * impr: iconography + border thickness * fix: numberShortener util fn --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com>
* devops: force deploy * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * impr(masterbots.ai): add return to browse on bot thread page view (#204) * ✨ Added back button to thread details page * ⚡️ changed char to svg * feat: ai gen 404 image for custom 404 error page (#210) * ⚡️ added custom error page * ⚡️ clean up * fix(masterbots.ai): terms page visibility and access * feat(masterbots.ai): consistent og image style design and dynamic metadata (#215) * feat: added og api endpoint * feat: design og image for dark mode * fix: file formated * fix: amend og image to pick current theme color and adapt * feat: added custom metadata to thread page * feat: added custom metadata to bot page * fix: clean up * fix: move bg to a component * fix: move og-image design to a component * fix: use variable for URL * fix: to slug func * ⚡️ Move and clean up UrlToSlug * fix(masterbots.ai): zod dependecy * fix: type error * fix: type error for metadata * fix: clean and build fix --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * [masterbots.ai] fix: multi AI models guard (#235) * fix-guards + dom warning * fix-rename env var - vercel name * chore(masterbots.ai): update payment terms & conditions (#233) * fix: update terms * fix: building error * fix: update terms content * fix: rm the older part at the bottom * feat(masterbots.ai): pro subscription payment + wizard (#226) * feat: added free card * feat: added animation to the plan card * feat: added more plan card and referral code link * fix: clean up * wip: wizard * feat: wizard & modal * feat: plan Design theme and modal Header and Footer * feat: plan clean up * update * clean up * fix: rm plan comp on browse page * fix: wizard clean up * feat: succes & error modal * feat: loading comp * feat: added checkout comp * feat: set up stripe and context * wip: implementing subscription * feat: implementing subscription * feat: payment reciept * fix: clean up receipt * fix: modal not showing & shallow routing * fix: small fix * fix: receipt comp * fix: clean up * fix: shallow rerouting * feat: check if user has an active subscription * fix: coderabbit ob * fix: coderabbit ob * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: clean up * fix: clean up * fix: page restructuring and status on the receipt * fix: revamp receipt and structure * fix: rm unused file * fix: clean up * fix: update & clean up * fix: update * fix: rm the svg * fix: revamp formatSystemPrompts * fix: revamp msg to formatSystemPrompts * fix: update * fix: refactor the receipt page * fix: rm public key * fix: update * fix: update * fix: update * fix: code refactor for error and loading rendering * ref: calling secret keys from server * ref: receipt page and small fix * fix: rm file * fix(impr): subs & flow ux + cleanup * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * feat: set up stripe and context * wip: implementing subscription * fix: rm the svg * fix: replace secret with variable * fix: chat restructure * fix(update): chat restructure * fix(deployment error): can't find an icon or not exported * fix: deployment issues * fix: deployment issues * fix: deployment issues * fix: adjust design * fix: clean up * fix: clean up * fix: color var updaye * [coderabbitai] impr: update apps/masterbots.ai/components/stripe-element.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabitai] impr: update apps/masterbots.ai/components/succes-content.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: success close button * fix: bg image for yearly card * fix: move func to util * ref: receipt page function to use reac-use * fix: move depencies to the app * fix: clean up * ref: wizard to use radix dialog components * update * fix: coderabitai update --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * [masterbots.ai] fix: llama3 models (#236) * fix-guards + dom warning * fix-rename env var - vercel name * fix-changed PERPLEXITY-LLama model * [masterbots.ai] impr(fix): ui tweaks (#237) * fix(UI):varius UI fixes * fix(UI):varius UI fixes * fix(UI): Tailwind class corrections, conflict resolution, text alignent to the left * fix(UI):update * fix(masterbots.ai): payment feedbacks (#240) * fix: make the dialog content responsive * fix: free plan card adjusted * fix: update * fix: update receipt styles * fix: build error * fix: build error * fix: build error update * fix: update * fix: observation * fix(masterbots.ai): update env variable (#244) * feat: sitemap (#238) * feat: add redirection rules * fix: update all links with new shorten urls * fix: update all links with new shorten urls * feat: make folder structure according to sitemap * [coderabbitai] impr(masterbots.ai): update app/c/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: build error * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat: add sitemap and metagraph * fix: use original generateMetadata * fix: update page links * fix: show only filtered threads on page reload * fix: build error --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): show first question & answer in thread list (#246) * feat: add 'disabled' state to ChatAccordion * fix: show default question's answer in thread list * fix: use braces and create explicit statement blocks * fix: subscription mobile responsive tweaks (#245) * update * fix: update * fix: responsiveness * fix: update * fix: few clean up * fix: rm unused image * fix: rm unused image * fix(impr): models enum table migrations (#247) * impr(hasura): db tables * impr(hasura): db tables * fix(hasura): user permissions * impr(hasura): sql models enum migration * fix(hasura): models_enum pk * fix(hasura): ci/cd default regional log bucket * docs: bun to requirements (#250) Co-authored-by: b <b> * feat: next auth, email/pw strategy (#249) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * docs: mb sytem diagram v1.0a * feat(impr): next auth environment helper function (#251) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch * feat:protecting env --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * impr(masterbots.ai): sign up form + sign in session data * docs: claude3 project knowledge docs * fix(masterbots.ai): devMode conditional * chore(masterbots.ai): rm console.log * chore: upt default hardcoded gpt model * fix: toSlug imports * fix: typo * fix(hasura): seeds * chore(impr): MB seeds update and upgrade (#253) * wip: upt seeds * chore: rm alter and table creations * chore(impr): MB seeds update and upgrade * fix: set thread to private by default * fix: prompt row typo * chore(hasura): seeds update default thread publicity * fix(masterbots.ai): adjust arrow direction in thread list (#255) * feat(impr): Vercel AI SDK Update (#256) * chore:ai version upt * chore:ai version upt * upt-ai delete * upt-ai versions * upt-sdk-actions * upt-complete-sdk-3.3 + dev notes * upt-@anthropic-ai/sdk + MessageParam * Delete apps/masterbots.ai/apps/masterbots.ai/package.json * Delete apps/masterbots.ai/apps/masterbots.ai/package-lock.json * impr-convertToCoreMessages ternary * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * fix(masterbots): google signIn (#260) * fix(masterbots.ai): fix thread-component loop (#261) * fix:(masterbots.ai) add useScroll hook (#263) * fix:introducing Two-phase scroll * impr: new hook to handle scrolling * impr: useScroll + respo * feat(masterbots.ai): chat sidebar filtering (#264) * sidebar refactor with ai * fix: sidebar AI V - Prev Jun (#262) * fix:semistable * fix:stable v * impr:delete nonused component * fix: upt category filtering * fix typo --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: sidebar state * fix(masterbots.ai): logic typo * fix(masterbots.ai): ts typo --------- Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * fix(masterbots.ai): bot button redirect change (#265) * wip(masterbots.ai): seo data impr (#267) * wip: seo data impr * impr(chore): ga tags * feat: add chat publicity trigger (#258) * update * feat: design thread visibilty * fix: added the backend * fix: added the backend * fix: rm files * fix: few clean up * fix(masterbots): google signIn (#260) * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * fix: update * fix: add permission * fix: update query * fix(masterbots.ai): fix thread-component loop (#261) * feat: design thread visibilty * fix: added the backend * fix: few clean up * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * update * fix: update * fix: publicity toggle * fix: error catch in the functions * fix: observations * fix: design impr * fix: thread pop-up height * chore(masterbots.ai): log rm & app version upt --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(masterbots.ai): user messages ai refactor (#266) * feat:userMessages refactor + hooks and utils * upt:rm console.log * fix:rollback useAiChat hook * fix:rollback - actions * fix(masterbots.ai): sidebar trigger * chore(hasura: s --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * wip: browse sidebar * impr(masterbots.ai): browse sidebar (#270) * fix: browse layout * feat(masterbots.ai): browse sidebar * fix: browse sidebar link condition * chore: upt signup default profile pic * chore: seeds upt (#269) * wip: seeds upt * chore(hasura): seeds review * feat(hasura): add "is_approved" thread field + seeds * chore: mb-genql upt * fix(hasura): thread param permission * fix(masterbots.ai): typo * fix(masterbots.ai): allow svg content-type * fix: chat + browse layout * style: clean up * Seo data (#273) * fix: build error * feat: Add SEO data to the chat page * feat: add default image, if not found * feat: Add SEO data to the browse page * fix: generates the image with error, in api/og * Update route.tsx fix: generates the image with error, in api/og * impr(masterbots.ai): title impr prompt * impr(masterbots.ai): improve current features v2 (#274) * add-impr-chat-prompt-footer-header-disclaimer * add-impr-chat-prompt-footer-header-disclaimer * add-UI-upt * add-UI-upt * add-action-prompt * add-clickable-upt * add-clickable-upt * Masterbots/fix redirects (#275) * fix:avatar-redirects * fix:avatar-redirect * fix(masterbots.ai): upt components/ui/button.tsx Coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix:URL correction --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] feat: wordware api (#276) * feat: add wordware api + vercel sdk strategy * feat: add wordware api + vercel sdk * wordware describe feat * wordware run + interface * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): typo /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * doc: mb system diagram upt * wip: icl calls integrations * impr(masterbots.ai): permission for thread & user action mode (#281) * update * feat: added permissions & new column * fix: rm unnessecary files * fix: rm permission check * feat(masterbots.ai): create password recovery (#282) * feat:add-recovery-strategy * chore:add nodeemailer * upt:hasura * upt:hasura * upt:gmail service * feat(hasura): otp, token table + junction w/user + mb-genql gen * feat:add recovery password API * fix:ai suggestion + UX * feat:improve ux show password feat * chore:env sample * chore:useSetState * chore:roles --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] impr: WW API sanitize and keep alive (#284) * keep-alive + API sanitize + timeOut guard * impr streamAndValidateResponse fn * wip(masterbots.ai): impr createImprovementPrompt * style(masterbots.ai): chat loading states comments * feat(masterbots.ai): add admin mode to approve thread (#283) * feat:added mode toggle and approve btn * feat: added migration for user role * feat: user role flow implet * fix: impr admin approve process * fix: clean up * fix: toggle CTA changed * fix: update * fix: update * fix: observ * fix: obs clean up * fix: update * fix: clean up * impr(masterbots.ai): alpha metadata chatbot labels (#288) * wip: metadata chatbot labels * wip(masterbots.ai): chatbot metadata labels * impr(masterbots.ai): gen chatMetadata * impr: simplifying prompt defitions + biome.json base config * impr(masterbots.ai): recursive improved text prompt * style: code comments + eslint chk * impr: biome.json config * fix(masterbots.ai): conflicts typo fix * style(impr): cleanPrompt + followingQuestionsPrompt relocation & cleanup * doc: map system (simplified) * fix(masterbots.ai): sideBar updating URL (#286) * fix:sideBar updating URL * feat: coderabbit-ai suggestions * fix: Implement auto-expanding sidebar categories and chatbot highlighting based on URL * feat: optimize sidebar navigation with Link * feat: thread options (#287) * feat: added verified and label to the options * usethreadvisibility as context * feat: added option design and functions * fix: clean up * fix: update * fix: update * fix: obsv * fix: merge and update * fix: update the delete popup * fix: observ * fix: update * fix: delete thread flow * update * fix: update * fix: types * fix: chatbot not required * fix: testing * fix: rm bun.lock * fix: clean up * fix: update * fix(masterbots.ai): temp freezing next version --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] feat: email verification (#289) * feat: email verification * feat: email verification * feat: email verification * upt:build * feat: handle error redirection * chore:cron task * upt: cron blocking instead erasing * feat(hasura): create social following table. (#292) * feat(db): create social following table. * create user following and followers relationships. * fix(db): ensure users can only manage their own follow relationships. * feat(db): social following and user table permissions improvements. * feat(db): improving social following table with timestamp and idx. * impr(db): permissions and tracked object relationships. * impr(db): avoid self follow. * chore(masterbots.ai): guard WordWare for prod routing * [masterbots.ai] fix: public/private tag bg on dark mode (#294) * fix: tag bg * fix: text color * fix: browse page error * fix: debugging * fix: debugging * fix: debugging * fix: added func to generate short link * fix(hasura): upt user permissions (#296) * update user permission * fix: reverse the following table * fix(hasura): build error (#297) * fix: error build * fix: reverse select perm * [masterbots.ai] feat: thread list display + components comments for ai (#299) * merged from develop * feat:add new ui-thread-representation-browse * feat:add comments for ai - C * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add app theme colors effects * feat:add comments for ai - b/p * [masterbots.ai] feat: chatbot search tool v0.1a (#295) * wip: chatbot search tool * wip(impr): ww api + chat ui tweaks * fix: init sidebar load state * fix: nesting layout * fix: thread-popup ui header * wip(impr): chatbot tooling * impr: loading state + debug chatbot tools * wip(fix): nodejs context * fix(temp): rm edge runtime api config * [masterbots.ai] feat: reorganize navigation menu for mobile view (#298) * feat: reorganize navigation menu for mobile view * UI: add sideBar style * feat: add link profile and logout icon * Update profile-sidebar.tsx Tailwind class fix * [masterbots.ai] feat: UI + Logic Improvements (#301) * feat:impr responsive * feat:impr password strenght checker * feat:impr responsive * upt-build * feat:respomsive tweask * feat:back arrow aria label * fix:chat mobile layout * fix:code section * fix:chat pannel * fix:chatBot redirection * feat:restore appConfig header * [masterbots.ai] fix: restore desktop navigation link - browse section (#303) * fix:restore desktop navigation link - browse * fix:formating * feat:yellow combobox btn (JUN-REQUEST) * glowing effect variant * upt:removed /b navigation as original v * feat:powerup mode + provider * [masterbots.ai] fix(impr): browse and chat content search (#304) * feat:browse title and content search * feat:browse title and content search * fix:typo * impr:reusable non result component * feat:skeletons * feat:guard * fix:skeletons * fix:chat searching * fix: add accent colour --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * [masterbots.ai] impr: seo sitemap (#306) * chore: sitemap creation * chore: add description based on category * chore: update queries in services * chore: truncate text * impr: upt (browse)/[category]/[threadId]/sitemap.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: ai tools (#302) * wip: ai tools * fix: WW json regexp * impr: simplifying main ai call * wip(fix): chat component re-render + cleanup * impr(refactor): chat hooks * fix: ts build * fix: ts build * fix: ts typo * fix: typo * impr: ai feedbacks * [masterbots.ai] wip(impr): web search (#309) * impr: web search tool call * fix: colour values * fix: typo * impr: code suggestions * fix: class name typo * wip(fix): web search false positive response + webSearch context * fix: web search callback * fix: typo * feat: profile page (#300) * feat: user card * fix: update * merge develop && update * feat: user generate bio & favourite topic * fix: update user card * feat: added profile sidebar * fix: update * update * update * update * fix: fetch approved and public threads * fix: fetch approved and public threads * update * fix: clean up and update * update * make fetch user work with bio * update * update * design updating * update * update * fix: few changes * update * fix: design update * fix: footer in layout * fix: update * fix: resercation * update * profile upload * feat: move the cloudinary key to env * fix: layout * fix: layout update * [masterbots.ai] fix: shallow routing for category & chatbots for chat & profile page (#313) * update * feat: added shallow link to the sidebar link * update' * fix: routing and content fetching * fix:update on routing * fix:update * update * update * update * fix: clean up * update * update * [masterbots.ai] feat: update ChatChatbotDetails (#314) * feat: new bot profile - chat * chore: dev comments * chore: white bg bot avatar * feat: add skeleton bot profile * [masterbots.ai] feat: include custom settings options (#317) * feat:relocation of theme switch(jun) * feat: create font-size accessibility provider(jun) * feat: r-sidebar theme switcher relocation + skeleton * feat: impr add rem instead px * [masterbots.ai] feat: integrate drizzle ORM (#320) * feat: create mb-drizzle package initial structure * feat:(masterbots.ai) add drizzle endpoint + service * chore: include database url * chore: upt mb-drizzle * feat: refactor drizzle config + generations * chore: impr migrate * chore: add working drizzle connection + migrations * feat: add centralized actions * chore: add ai review recomendations * chore: webSearch feature flag + use cloudinary upload preset * fix: responsive sidebar fix * fix: ts chk build * fix: sidebar async call * fix: ts build * chore: typo * [masterbots.ai] fix: browse category navigation (#316) * update * fix: rm category * update * fix: pop up on the user threads * update * update clean up * update * fix: clean up * fix: clean up and update * fix: update * fix: popup on navigation * fix: update * update * update * update * clean up * update * merge * fix: hasura thread delete + user dup permissions (#330) * [masterbots.ai] feat: onboarding bot profile variants (#324) * add chatbot-details and browse-details variants * feat: add bio generation * feat: chat profile bg * chore: update bot profile designs * chore: remove internal padding from cardHeader component * impr: iconography + border thickness * fix: numberShortener util fn --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: user following (#319) * update * added follow user * update * fix: upt hasura metadata databases, public_social_following.yaml coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: upt masterbots.ai lib, utils.ts coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: user card * update * fix: permission * update * fix: added more column for chatbot followee * fix:foloow chatbot implementation * update * threads by following user/bots * update * update * update * update * update * update * update * update --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: new sonner (#334) * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * fix: overflow of the width of the sonner * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * chore: use hook sonner * refactor: changes according to coderabbitai * refactor: update use of sonner * chore:remove icons and use lucide icons * chore: Using Lucide Icons * chore: bun pkg mngr upt * Standardize url building using urlbuilders utility (#341) * fix: update url * fix: url update * update * [masterbots.ai] impr: og Image api dynamic to be useful without thread ID (#335) * update * fix: make OG image use default * fix: update * fix: update * fix: obs * fix: update * fix: added og to browse and chat * update * update * update * fix: provider types error * fix: updfate UUID * fix: update UUID * [masterbots.ai] docs: hook useSonner (#343) * chore: document hook useSonner * refactor: document hook useSonner, according coderabbit * impr: web search response (#310) * impr: web search response * refactor: extracting clickable generation logic * refactor: extracting clickable generation logic * fix: webSearch clickable text + reference links * chore: fix build * feat:(impr) stable version link to references format step 1 * feat:(impr) stable version link to references format step 2 --------- Co-authored-by: Bran18 <andreyfdez18@gmail.com> * [masterbots.ai] refactor: prelaunch ux/ui changes (#336) * refactor: replicate tooltip effect in desktop bot chatbot details * fix: add guard and removed re-render * fix: refactor mobile bot chatbot details * refactor: make chatPannel bigger * chore:add new bot card design + sidebar hover color * chore: delete public and private sw + icons * chore: include public + delete extra actions * chore: add sidebar bg * add sidebar new styles + lib fn * feat: add select bot * chore: cleaning * fix: build - removing BotMessageSquareIcon * fix: types/node version + node min ver req --------- Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> --------- Co-authored-by: Gabo Esquivel <contact@gaboesquivel.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Anouk Rímola <77553677+AnoukRImola@users.noreply.github.com> Co-authored-by: Trivium <25100787+Nemunas@users.noreply.github.com> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Luis Carrión <41096968+luighis@users.noreply.github.com> Co-authored-by: Marco Ledezma <marcoledezmacordero09@gmail.com> Co-authored-by: Bran18 <andreyfdez18@gmail.com> Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com>
* devops: force deploy * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * impr(masterbots.ai): add return to browse on bot thread page view (#204) * ✨ Added back button to thread details page * ⚡️ changed char to svg * feat: ai gen 404 image for custom 404 error page (#210) * ⚡️ added custom error page * ⚡️ clean up * fix(masterbots.ai): terms page visibility and access * feat(masterbots.ai): consistent og image style design and dynamic metadata (#215) * feat: added og api endpoint * feat: design og image for dark mode * fix: file formated * fix: amend og image to pick current theme color and adapt * feat: added custom metadata to thread page * feat: added custom metadata to bot page * fix: clean up * fix: move bg to a component * fix: move og-image design to a component * fix: use variable for URL * fix: to slug func * ⚡️ Move and clean up UrlToSlug * fix(masterbots.ai): zod dependecy * fix: type error * fix: type error for metadata * fix: clean and build fix --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * [masterbots.ai] fix: multi AI models guard (#235) * fix-guards + dom warning * fix-rename env var - vercel name * chore(masterbots.ai): update payment terms & conditions (#233) * fix: update terms * fix: building error * fix: update terms content * fix: rm the older part at the bottom * feat(masterbots.ai): pro subscription payment + wizard (#226) * feat: added free card * feat: added animation to the plan card * feat: added more plan card and referral code link * fix: clean up * wip: wizard * feat: wizard & modal * feat: plan Design theme and modal Header and Footer * feat: plan clean up * update * clean up * fix: rm plan comp on browse page * fix: wizard clean up * feat: succes & error modal * feat: loading comp * feat: added checkout comp * feat: set up stripe and context * wip: implementing subscription * feat: implementing subscription * feat: payment reciept * fix: clean up receipt * fix: modal not showing & shallow routing * fix: small fix * fix: receipt comp * fix: clean up * fix: shallow rerouting * feat: check if user has an active subscription * fix: coderabbit ob * fix: coderabbit ob * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: clean up * fix: clean up * fix: page restructuring and status on the receipt * fix: revamp receipt and structure * fix: rm unused file * fix: clean up * fix: update & clean up * fix: update * fix: rm the svg * fix: revamp formatSystemPrompts * fix: revamp msg to formatSystemPrompts * fix: update * fix: refactor the receipt page * fix: rm public key * fix: update * fix: update * fix: update * fix: code refactor for error and loading rendering * ref: calling secret keys from server * ref: receipt page and small fix * fix: rm file * fix(impr): subs & flow ux + cleanup * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * feat: set up stripe and context * wip: implementing subscription * fix: rm the svg * fix: replace secret with variable * fix: chat restructure * fix(update): chat restructure * fix(deployment error): can't find an icon or not exported * fix: deployment issues * fix: deployment issues * fix: deployment issues * fix: adjust design * fix: clean up * fix: clean up * fix: color var updaye * [coderabbitai] impr: update apps/masterbots.ai/components/stripe-element.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabitai] impr: update apps/masterbots.ai/components/succes-content.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: success close button * fix: bg image for yearly card * fix: move func to util * ref: receipt page function to use reac-use * fix: move depencies to the app * fix: clean up * ref: wizard to use radix dialog components * update * fix: coderabitai update --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * [masterbots.ai] fix: llama3 models (#236) * fix-guards + dom warning * fix-rename env var - vercel name * fix-changed PERPLEXITY-LLama model * [masterbots.ai] impr(fix): ui tweaks (#237) * fix(UI):varius UI fixes * fix(UI):varius UI fixes * fix(UI): Tailwind class corrections, conflict resolution, text alignent to the left * fix(UI):update * fix(masterbots.ai): payment feedbacks (#240) * fix: make the dialog content responsive * fix: free plan card adjusted * fix: update * fix: update receipt styles * fix: build error * fix: build error * fix: build error update * fix: update * fix: observation * fix(masterbots.ai): update env variable (#244) * feat: sitemap (#238) * feat: add redirection rules * fix: update all links with new shorten urls * fix: update all links with new shorten urls * feat: make folder structure according to sitemap * [coderabbitai] impr(masterbots.ai): update app/c/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: build error * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat: add sitemap and metagraph * fix: use original generateMetadata * fix: update page links * fix: show only filtered threads on page reload * fix: build error --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): show first question & answer in thread list (#246) * feat: add 'disabled' state to ChatAccordion * fix: show default question's answer in thread list * fix: use braces and create explicit statement blocks * fix: subscription mobile responsive tweaks (#245) * update * fix: update * fix: responsiveness * fix: update * fix: few clean up * fix: rm unused image * fix: rm unused image * fix(impr): models enum table migrations (#247) * impr(hasura): db tables * impr(hasura): db tables * fix(hasura): user permissions * impr(hasura): sql models enum migration * fix(hasura): models_enum pk * fix(hasura): ci/cd default regional log bucket * docs: bun to requirements (#250) Co-authored-by: b <b> * feat: next auth, email/pw strategy (#249) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * docs: mb sytem diagram v1.0a * feat(impr): next auth environment helper function (#251) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch * feat:protecting env --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * impr(masterbots.ai): sign up form + sign in session data * docs: claude3 project knowledge docs * fix(masterbots.ai): devMode conditional * chore(masterbots.ai): rm console.log * chore: upt default hardcoded gpt model * fix: toSlug imports * fix: typo * fix(hasura): seeds * chore(impr): MB seeds update and upgrade (#253) * wip: upt seeds * chore: rm alter and table creations * chore(impr): MB seeds update and upgrade * fix: set thread to private by default * fix: prompt row typo * chore(hasura): seeds update default thread publicity * fix(masterbots.ai): adjust arrow direction in thread list (#255) * feat(impr): Vercel AI SDK Update (#256) * chore:ai version upt * chore:ai version upt * upt-ai delete * upt-ai versions * upt-sdk-actions * upt-complete-sdk-3.3 + dev notes * upt-@anthropic-ai/sdk + MessageParam * Delete apps/masterbots.ai/apps/masterbots.ai/package.json * Delete apps/masterbots.ai/apps/masterbots.ai/package-lock.json * impr-convertToCoreMessages ternary * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * fix(masterbots): google signIn (#260) * fix(masterbots.ai): fix thread-component loop (#261) * fix:(masterbots.ai) add useScroll hook (#263) * fix:introducing Two-phase scroll * impr: new hook to handle scrolling * impr: useScroll + respo * feat(masterbots.ai): chat sidebar filtering (#264) * sidebar refactor with ai * fix: sidebar AI V - Prev Jun (#262) * fix:semistable * fix:stable v * impr:delete nonused component * fix: upt category filtering * fix typo --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: sidebar state * fix(masterbots.ai): logic typo * fix(masterbots.ai): ts typo --------- Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * fix(masterbots.ai): bot button redirect change (#265) * wip(masterbots.ai): seo data impr (#267) * wip: seo data impr * impr(chore): ga tags * feat: add chat publicity trigger (#258) * update * feat: design thread visibilty * fix: added the backend * fix: added the backend * fix: rm files * fix: few clean up * fix(masterbots): google signIn (#260) * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * fix: update * fix: add permission * fix: update query * fix(masterbots.ai): fix thread-component loop (#261) * feat: design thread visibilty * fix: added the backend * fix: few clean up * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * update * fix: update * fix: publicity toggle * fix: error catch in the functions * fix: observations * fix: design impr * fix: thread pop-up height * chore(masterbots.ai): log rm & app version upt --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(masterbots.ai): user messages ai refactor (#266) * feat:userMessages refactor + hooks and utils * upt:rm console.log * fix:rollback useAiChat hook * fix:rollback - actions * fix(masterbots.ai): sidebar trigger * chore(hasura: s --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * wip: browse sidebar * impr(masterbots.ai): browse sidebar (#270) * fix: browse layout * feat(masterbots.ai): browse sidebar * fix: browse sidebar link condition * chore: upt signup default profile pic * chore: seeds upt (#269) * wip: seeds upt * chore(hasura): seeds review * feat(hasura): add "is_approved" thread field + seeds * chore: mb-genql upt * fix(hasura): thread param permission * fix(masterbots.ai): typo * fix(masterbots.ai): allow svg content-type * fix: chat + browse layout * style: clean up * Seo data (#273) * fix: build error * feat: Add SEO data to the chat page * feat: add default image, if not found * feat: Add SEO data to the browse page * fix: generates the image with error, in api/og * Update route.tsx fix: generates the image with error, in api/og * impr(masterbots.ai): title impr prompt * impr(masterbots.ai): improve current features v2 (#274) * add-impr-chat-prompt-footer-header-disclaimer * add-impr-chat-prompt-footer-header-disclaimer * add-UI-upt * add-UI-upt * add-action-prompt * add-clickable-upt * add-clickable-upt * Masterbots/fix redirects (#275) * fix:avatar-redirects * fix:avatar-redirect * fix(masterbots.ai): upt components/ui/button.tsx Coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix:URL correction --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] feat: wordware api (#276) * feat: add wordware api + vercel sdk strategy * feat: add wordware api + vercel sdk * wordware describe feat * wordware run + interface * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): typo /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * doc: mb system diagram upt * wip: icl calls integrations * impr(masterbots.ai): permission for thread & user action mode (#281) * update * feat: added permissions & new column * fix: rm unnessecary files * fix: rm permission check * feat(masterbots.ai): create password recovery (#282) * feat:add-recovery-strategy * chore:add nodeemailer * upt:hasura * upt:hasura * upt:gmail service * feat(hasura): otp, token table + junction w/user + mb-genql gen * feat:add recovery password API * fix:ai suggestion + UX * feat:improve ux show password feat * chore:env sample * chore:useSetState * chore:roles --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] impr: WW API sanitize and keep alive (#284) * keep-alive + API sanitize + timeOut guard * impr streamAndValidateResponse fn * wip(masterbots.ai): impr createImprovementPrompt * style(masterbots.ai): chat loading states comments * feat(masterbots.ai): add admin mode to approve thread (#283) * feat:added mode toggle and approve btn * feat: added migration for user role * feat: user role flow implet * fix: impr admin approve process * fix: clean up * fix: toggle CTA changed * fix: update * fix: update * fix: observ * fix: obs clean up * fix: update * fix: clean up * impr(masterbots.ai): alpha metadata chatbot labels (#288) * wip: metadata chatbot labels * wip(masterbots.ai): chatbot metadata labels * impr(masterbots.ai): gen chatMetadata * impr: simplifying prompt defitions + biome.json base config * impr(masterbots.ai): recursive improved text prompt * style: code comments + eslint chk * impr: biome.json config * fix(masterbots.ai): conflicts typo fix * style(impr): cleanPrompt + followingQuestionsPrompt relocation & cleanup * doc: map system (simplified) * fix(masterbots.ai): sideBar updating URL (#286) * fix:sideBar updating URL * feat: coderabbit-ai suggestions * fix: Implement auto-expanding sidebar categories and chatbot highlighting based on URL * feat: optimize sidebar navigation with Link * feat: thread options (#287) * feat: added verified and label to the options * usethreadvisibility as context * feat: added option design and functions * fix: clean up * fix: update * fix: update * fix: obsv * fix: merge and update * fix: update the delete popup * fix: observ * fix: update * fix: delete thread flow * update * fix: update * fix: types * fix: chatbot not required * fix: testing * fix: rm bun.lock * fix: clean up * fix: update * fix(masterbots.ai): temp freezing next version --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] feat: email verification (#289) * feat: email verification * feat: email verification * feat: email verification * upt:build * feat: handle error redirection * chore:cron task * upt: cron blocking instead erasing * feat(hasura): create social following table. (#292) * feat(db): create social following table. * create user following and followers relationships. * fix(db): ensure users can only manage their own follow relationships. * feat(db): social following and user table permissions improvements. * feat(db): improving social following table with timestamp and idx. * impr(db): permissions and tracked object relationships. * impr(db): avoid self follow. * chore(masterbots.ai): guard WordWare for prod routing * [masterbots.ai] fix: public/private tag bg on dark mode (#294) * fix: tag bg * fix: text color * fix: browse page error * fix: debugging * fix: debugging * fix: debugging * fix: added func to generate short link * fix(hasura): upt user permissions (#296) * update user permission * fix: reverse the following table * fix(hasura): build error (#297) * fix: error build * fix: reverse select perm * [masterbots.ai] feat: thread list display + components comments for ai (#299) * merged from develop * feat:add new ui-thread-representation-browse * feat:add comments for ai - C * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add app theme colors effects * feat:add comments for ai - b/p * [masterbots.ai] feat: chatbot search tool v0.1a (#295) * wip: chatbot search tool * wip(impr): ww api + chat ui tweaks * fix: init sidebar load state * fix: nesting layout * fix: thread-popup ui header * wip(impr): chatbot tooling * impr: loading state + debug chatbot tools * wip(fix): nodejs context * fix(temp): rm edge runtime api config * [masterbots.ai] feat: reorganize navigation menu for mobile view (#298) * feat: reorganize navigation menu for mobile view * UI: add sideBar style * feat: add link profile and logout icon * Update profile-sidebar.tsx Tailwind class fix * [masterbots.ai] feat: UI + Logic Improvements (#301) * feat:impr responsive * feat:impr password strenght checker * feat:impr responsive * upt-build * feat:respomsive tweask * feat:back arrow aria label * fix:chat mobile layout * fix:code section * fix:chat pannel * fix:chatBot redirection * feat:restore appConfig header * [masterbots.ai] fix: restore desktop navigation link - browse section (#303) * fix:restore desktop navigation link - browse * fix:formating * feat:yellow combobox btn (JUN-REQUEST) * glowing effect variant * upt:removed /b navigation as original v * feat:powerup mode + provider * [masterbots.ai] fix(impr): browse and chat content search (#304) * feat:browse title and content search * feat:browse title and content search * fix:typo * impr:reusable non result component * feat:skeletons * feat:guard * fix:skeletons * fix:chat searching * fix: add accent colour --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * [masterbots.ai] impr: seo sitemap (#306) * chore: sitemap creation * chore: add description based on category * chore: update queries in services * chore: truncate text * impr: upt (browse)/[category]/[threadId]/sitemap.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: ai tools (#302) * wip: ai tools * fix: WW json regexp * impr: simplifying main ai call * wip(fix): chat component re-render + cleanup * impr(refactor): chat hooks * fix: ts build * fix: ts build * fix: ts typo * fix: typo * impr: ai feedbacks * [masterbots.ai] wip(impr): web search (#309) * impr: web search tool call * fix: colour values * fix: typo * impr: code suggestions * fix: class name typo * wip(fix): web search false positive response + webSearch context * fix: web search callback * fix: typo * feat: profile page (#300) * feat: user card * fix: update * merge develop && update * feat: user generate bio & favourite topic * fix: update user card * feat: added profile sidebar * fix: update * update * update * update * fix: fetch approved and public threads * fix: fetch approved and public threads * update * fix: clean up and update * update * make fetch user work with bio * update * update * design updating * update * update * fix: few changes * update * fix: design update * fix: footer in layout * fix: update * fix: resercation * update * profile upload * feat: move the cloudinary key to env * fix: layout * fix: layout update * [masterbots.ai] fix: shallow routing for category & chatbots for chat & profile page (#313) * update * feat: added shallow link to the sidebar link * update' * fix: routing and content fetching * fix:update on routing * fix:update * update * update * update * fix: clean up * update * update * [masterbots.ai] feat: update ChatChatbotDetails (#314) * feat: new bot profile - chat * chore: dev comments * chore: white bg bot avatar * feat: add skeleton bot profile * [masterbots.ai] feat: include custom settings options (#317) * feat:relocation of theme switch(jun) * feat: create font-size accessibility provider(jun) * feat: r-sidebar theme switcher relocation + skeleton * feat: impr add rem instead px * [masterbots.ai] feat: integrate drizzle ORM (#320) * feat: create mb-drizzle package initial structure * feat:(masterbots.ai) add drizzle endpoint + service * chore: include database url * chore: upt mb-drizzle * feat: refactor drizzle config + generations * chore: impr migrate * chore: add working drizzle connection + migrations * feat: add centralized actions * chore: add ai review recomendations * chore: webSearch feature flag + use cloudinary upload preset * fix: responsive sidebar fix * fix: ts chk build * fix: sidebar async call * fix: ts build * chore: typo * [masterbots.ai] fix: browse category navigation (#316) * update * fix: rm category * update * fix: pop up on the user threads * update * update clean up * update * fix: clean up * fix: clean up and update * fix: update * fix: popup on navigation * fix: update * update * update * update * clean up * update * merge * fix: hasura thread delete + user dup permissions (#330) * [masterbots.ai] feat: onboarding bot profile variants (#324) * add chatbot-details and browse-details variants * feat: add bio generation * feat: chat profile bg * chore: update bot profile designs * chore: remove internal padding from cardHeader component * impr: iconography + border thickness * fix: numberShortener util fn --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: user following (#319) * update * added follow user * update * fix: upt hasura metadata databases, public_social_following.yaml coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: upt masterbots.ai lib, utils.ts coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: user card * update * fix: permission * update * fix: added more column for chatbot followee * fix:foloow chatbot implementation * update * threads by following user/bots * update * update * update * update * update * update * update * update --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: new sonner (#334) * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * fix: overflow of the width of the sonner * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * chore: use hook sonner * refactor: changes according to coderabbitai * refactor: update use of sonner * chore:remove icons and use lucide icons * chore: Using Lucide Icons * chore: bun pkg mngr upt * Standardize url building using urlbuilders utility (#341) * fix: update url * fix: url update * update * [masterbots.ai] impr: og Image api dynamic to be useful without thread ID (#335) * update * fix: make OG image use default * fix: update * fix: update * fix: obs * fix: update * fix: added og to browse and chat * update * update * update * fix: provider types error * fix: updfate UUID * fix: update UUID * [masterbots.ai] docs: hook useSonner (#343) * chore: document hook useSonner * refactor: document hook useSonner, according coderabbit * impr: web search response (#310) * impr: web search response * refactor: extracting clickable generation logic * refactor: extracting clickable generation logic * fix: webSearch clickable text + reference links * chore: fix build * feat:(impr) stable version link to references format step 1 * feat:(impr) stable version link to references format step 2 --------- Co-authored-by: Bran18 <andreyfdez18@gmail.com> * [masterbots.ai] refactor: prelaunch ux/ui changes (#336) * refactor: replicate tooltip effect in desktop bot chatbot details * fix: add guard and removed re-render * fix: refactor mobile bot chatbot details * refactor: make chatPannel bigger * chore:add new bot card design + sidebar hover color * chore: delete public and private sw + icons * chore: include public + delete extra actions * chore: add sidebar bg * add sidebar new styles + lib fn * feat: add select bot * chore: cleaning * fix: build - removing BotMessageSquareIcon * fix: types/node version + node min ver req --------- Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> * [masterbots.ai] feat: continuous thread ui functionality (#340) * wip: continuos thread logic and functionality. * feat: updating parent thread functionality. * feat: continuous thread UI and finalize functionality. * fix: lowering resolveThreadId logic complexity. * Update apps/hasura/migrations/masterbots/1736934906237_set_fk_public_thread_parent_thread/down.sql Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update apps/masterbots.ai/lib/hooks/use-mb-chat.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: ts build --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] fix: refactored components - pre icl v3 (#348) * chore: add refactored components - pre icl v3 * chore: add navigation color + text-input color * fix: type * wip: header active state * fix: them toggle --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: icl v1a (#344) * wip: vercel ai sdk upt * wip: icl web feature * chore: icl hasura migrations, metadata and seeds * chore: genql gen * impr: chat opt separator render * impr: accordion chevron pos * impr: chat-list space * Fix observations from Jun (#353) * update * fix: update * fix: added empty state * fix: rm favourt and added card empty state * fix: hide sibe category without threads on user profile * fix: update * fix: update * [masterbots.ai] fix: reduce prompt input validation * fix: hasura moderator augmentedFrom msg prop * impr: ai prompt examples flow * fix: hasura moderator role thread upt permissions * [masterbots.ai] feat: chatbot following + thread highlight + bot thread page to blog (#337) * update * feat: added chatbot follow function to other component * update profile thread * thread highligh * thread highligh update * update * fix: thread blog * fix: follow chat bot * update * fix: observations * fix provider types issue * fix provider update * feat: update blog template * fix: rm p tag from list items * fix: merge * fix: rm parentid and continiue reading * update * update * merge * fix: generated types * update * updatd * update code * impr: profile page layout * fix: mg-genql gen ts --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] fix: init threads render + icl init cleanup (#354) * wip: fix init threads render + icl cleanup This fixes the following issues: 1. Reduced the amount of re-renders when sending the new data. 2. Clean up the ICL functions and types. 3. State management for the user-thread-panel. 4. Debug the re-rendering uissue that is replacing the main thread content. 5. Debug opening a new thread with the new ICL system. They show in the list but not returning the messages when opening it up. 6. Few code clean ups. * impr: thread list re-render in chat page * fix: initialMessages in useChat * fix: hasura moderator role thread upt permissions * impr: thread list re-render * fix: markdown pkg ts * fix: markdown pkg ts * fix: downgrade react-markdown (#358) * fix: downgrade react-markdown * fix: downgrade react-markdown * fix: markdown dep version + layout thread list ui * impr: gray-ish overlay bg rm * chore: console log rm --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: icl seeds v2 (#357) * chore: upt hasura icl seeds * chore: chat legacy table rm * chore(wip): icl seeds curation * chore: upt icl init seed pt2 * chore: upt icl init seed pt3 * chore: upt icl init seed pt3 * chore: upt icl init seed pt4 * fix: cat + chatbot seeds revision * chore: tag seeds note upt * fix: drop and create chatbot_domain table (#360) * fix: drop and create chatbot_domain table * fix: chatbot_domain permissions * fix: SQL typo * [masterbots.ai] feat: improve common components and features (#356) * fix: sidebar * feat: add DeepSeek integration * chore: wip accordions * fix: include popup accordion * chore: add shared accordion to thread list * fix: extra space * fix: extra space * chore: add tabs effect * chore: add colors based on routes * chore: add colors based on routes --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: useRouter import * [masterbots.ai] fix: sidebar category render (#362) * fix: sidebar category render * docs: toggleChatbotSelection * [hasura] chore: label + label_chatbot_category_domain dropping tables migration (#361) * fix: fetch chatbotDomain * [hasura] chore: rm wip example seed part * chore: rm legacy tables + fix getChatbotMetadata props (#363) * chore: rm legacy tables * fix: getChatbotMetadata * fix: chatbotMetadata ts * wip(refactor): icl init tags & categories fetch * chore: bun.lockb upt * fix: hotfix build error * impr: icl metadata requests v1 (#365) * wip: icl fetch + meta prompt impr * impr: sidebar paddings * wip: icl fetch + meta prompt impr * wip: icl fetch + meta prompt impr * impr: icl metadata request v2 (#366) * wip: icl fetch + meta prompt impr * fix: icl fetch + meta prompt impr * impr: icl output + prompts * chore: console.log rm * chore: console.log icl metadata devMode * [masterbots.ai] test: sytem prompt as user role * fix: show sidebar in profile (#364) * chore: clickable responses update * [masterbots.ai] refactor: use chat hook context + state management perf (#369) * chore: system prompt as system role * refactor: use-mb-chat to context * fix: mbchat provider location * impr: profile page scroll & footer position (#367) * update * fix: update * update * update * fix: profile page scroll and footer positioning * fix: profile sidebar * update * update * Revert "update" This reverts commit c178b1b18092bb3872f6d905b1768e9ab5b3af6b. * Revert "Revert "update"" This reverts commit a20d8b0cc8da2018cca689ba0b35ba9184cbdc4d. * Revert "Revert "Revert "update""" This reverts commit ac8b362a1b7143804000e6ccf5801f0ec95d06d1. * fix: profile page footer positioning * fix: visitor should be able to scroll through the categories * fix: profile page side bar * fix: rm loading when user not logged in * fix: update * [masterbots.ai] fix: clickable text feature (#372) * fix: accordion arrow * fix: clickable text formating * wip: fix thread load (#373) * wip: fix thread-list load * fix: continuous system prompt context * fix: render flickr + followup question logic impr * impr: prompt tags segmentation * chore: impr following question prompt * feat: public continue thread (#375) * refactor: integrating chatPannelHeader into chatPannel * chore: update browse-chat-message with shared accordion * chore: continue conversation + full conversations fix * fix: left align text * [masterbots.ai] fix: show appropriate bot cards in the user thread list (#368) * update * fix: update * update * update * fix: filter category & chatbot by userId on profile page * fix: hide empty chatbots * fix: followee permission error as moderator to follow and unfollow (#374) * update * fix: update * update * update * fix: permission issue for moderator when following other user * fix: shift on user card when loading or empty * update * [masterbots.ai] fix: isNewChat guard + continuous thread messages + power up prompts (#377) * fix: thread render at pop-up close * impr: getRouteType + chat layout * wip: isNewChat state * impr: prompt tags segmentation * fix: chat messages list render + open last according by default on new responses * impr: thread list render guard * feat(wip): isPowerUp mode * impr: memoizing getChatbotMetadata * fix: grabbing previous messages, continous chat * chore: add todo comment * impr: previous thread ui + coderabbitai observations * fix: previous conversation re-render * doc: useEffect biome-ignore * impr: deep obj compare for msg pairs * fix: ts build * fix: ts build * [masterbots.ai] refactor: useScroll hook (#376) * chore: refactor useScroll * chore: refactor useScroll * chore: refactor useScroll * Delete apps/masterbots.ai/lib/context/thread-context.tsx * chore: test commit * fix: import type * chore: add clearTimeout * chore: add destructuring * feat: update use-mb-scroll * feat: update thread component --------- Co-authored-by: Brandon fernandez <brandonfdez@Brandons-MacBook-Air.local> * [masterbots.ai] fix: chat stream render (#380) * fix: chat stream render * fix: typo * chore: chatbot prompts init config + active thread hotfixes (#378) * wip: chatbot prompts init config * wip: upt init config seeds, adding prompt configs * chore: upt init config seeds * fix: resetActiveThread guard * impr(wip): masterbot config prompt * chore: icl data curation, domain + category + sub-category * chore: init domain seeds curation * fix: moderator + user role table selection * impr: web prompt config + fix thread list render + code comments * fix: coderabbitai observations * [hasura] chore: upt user insert rows seed * fix: conflict fix --------- Co-authored-by: Gabo Esquivel <contact@gaboesquivel.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Anouk Rímola <77553677+AnoukRImola@users.noreply.github.com> Co-authored-by: Trivium <25100787+Nemunas@users.noreply.github.com> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Luis Carrión <41096968+luighis@users.noreply.github.com> Co-authored-by: Marco Ledezma <marcoledezmacordero09@gmail.com> Co-authored-by: Bran18 <andreyfdez18@gmail.com> Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Brandon fernandez <brandonfdez@Brandons-MacBook-Air.local>
* devops: force deploy * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * devops: trigger automated build * impr(masterbots.ai): add return to browse on bot thread page view (#204) * ✨ Added back button to thread details page * ⚡️ changed char to svg * feat: ai gen 404 image for custom 404 error page (#210) * ⚡️ added custom error page * ⚡️ clean up * fix(masterbots.ai): terms page visibility and access * feat(masterbots.ai): consistent og image style design and dynamic metadata (#215) * feat: added og api endpoint * feat: design og image for dark mode * fix: file formated * fix: amend og image to pick current theme color and adapt * feat: added custom metadata to thread page * feat: added custom metadata to bot page * fix: clean up * fix: move bg to a component * fix: move og-image design to a component * fix: use variable for URL * fix: to slug func * ⚡️ Move and clean up UrlToSlug * fix(masterbots.ai): zod dependecy * fix: type error * fix: type error for metadata * fix: clean and build fix --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * [masterbots.ai] fix: multi AI models guard (#235) * fix-guards + dom warning * fix-rename env var - vercel name * chore(masterbots.ai): update payment terms & conditions (#233) * fix: update terms * fix: building error * fix: update terms content * fix: rm the older part at the bottom * feat(masterbots.ai): pro subscription payment + wizard (#226) * feat: added free card * feat: added animation to the plan card * feat: added more plan card and referral code link * fix: clean up * wip: wizard * feat: wizard & modal * feat: plan Design theme and modal Header and Footer * feat: plan clean up * update * clean up * fix: rm plan comp on browse page * fix: wizard clean up * feat: succes & error modal * feat: loading comp * feat: added checkout comp * feat: set up stripe and context * wip: implementing subscription * feat: implementing subscription * feat: payment reciept * fix: clean up receipt * fix: modal not showing & shallow routing * fix: small fix * fix: receipt comp * fix: clean up * fix: shallow rerouting * feat: check if user has an active subscription * fix: coderabbit ob * fix: coderabbit ob * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: coderabbit clean up update * fix: clean up * fix: clean up * fix: page restructuring and status on the receipt * fix: revamp receipt and structure * fix: rm unused file * fix: clean up * fix: update & clean up * fix: update * fix: rm the svg * fix: revamp formatSystemPrompts * fix: revamp msg to formatSystemPrompts * fix: update * fix: refactor the receipt page * fix: rm public key * fix: update * fix: update * fix: update * fix: code refactor for error and loading rendering * ref: calling secret keys from server * ref: receipt page and small fix * fix: rm file * fix(impr): subs & flow ux + cleanup * fix(masterbots.ai): OG not redering (#224) * fix: og to render first letter of username if there's no avatar * fix: clean up * fix: clean up * fix(masterbots.ai): share function (#225) * feat: create action.ts * fix: upt share button * fix: add axios module * fix: add resend module * fix: update vercel env config * fix: split share function * fix: update share component * [coderabbitai] style: upt thread-user-actions condition Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(hasura): update user db schema for pro users (#227) * feat: add get_free_month column to user table * feat: create referral table * feat: add is_blocked column to user table * feat: add pro_user_subscription_id column to user table * fix: upt metadata * fix: update relationship name * feat(hasura): add Ai Model Tracker To Threads (#229) * feat: create 'models' table AI models * fix: add 'model' column to 'thread' table with foreign key constraint * feat: add model_value into models * [masterbots.ai] feat: multi AI models integration (#228) * [masterbots.ai]feat:(multimodels-integration)add actions - helpers - routes * [masterbots.ai]feat:(multimodels-integration)add NextTopLoader * [masterbots.ai]feat:(multimodels-integration)add NextTopLoaders * [masterbots.ai]feat:(multimodels-integration)add new chat components * [masterbots.ai]chore:next version * [masterbots.ai]feat:(multimodels-integration)update use context * [masterbots.ai]feat:(multimodels-integration)icons update * [masterbots.ai]chore:command ui * [masterbots.ai]refactor:moving chat componets to folder * [masterbots.ai]feat:env checker * [masterbots.ai]feat:env guard * docs: site map diagram * feat: set up stripe and context * wip: implementing subscription * fix: rm the svg * fix: replace secret with variable * fix: chat restructure * fix(update): chat restructure * fix(deployment error): can't find an icon or not exported * fix: deployment issues * fix: deployment issues * fix: deployment issues * fix: adjust design * fix: clean up * fix: clean up * fix: color var updaye * [coderabbitai] impr: update apps/masterbots.ai/components/stripe-element.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabitai] impr: update apps/masterbots.ai/components/succes-content.tsx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: success close button * fix: bg image for yearly card * fix: move func to util * ref: receipt page function to use reac-use * fix: move depencies to the app * fix: clean up * ref: wizard to use radix dialog components * update * fix: coderabitai update --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * [masterbots.ai] fix: llama3 models (#236) * fix-guards + dom warning * fix-rename env var - vercel name * fix-changed PERPLEXITY-LLama model * [masterbots.ai] impr(fix): ui tweaks (#237) * fix(UI):varius UI fixes * fix(UI):varius UI fixes * fix(UI): Tailwind class corrections, conflict resolution, text alignent to the left * fix(UI):update * fix(masterbots.ai): payment feedbacks (#240) * fix: make the dialog content responsive * fix: free plan card adjusted * fix: update * fix: update receipt styles * fix: build error * fix: build error * fix: build error update * fix: update * fix: observation * fix(masterbots.ai): update env variable (#244) * feat: sitemap (#238) * feat: add redirection rules * fix: update all links with new shorten urls * fix: update all links with new shorten urls * feat: make folder structure according to sitemap * [coderabbitai] impr(masterbots.ai): update app/c/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: build error * [coderabbitai] impr(masterbots.ai): update app/c/[category]/[chatbot]/page.tsx error handling Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat: add sitemap and metagraph * fix: use original generateMetadata * fix: update page links * fix: show only filtered threads on page reload * fix: build error --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): show first question & answer in thread list (#246) * feat: add 'disabled' state to ChatAccordion * fix: show default question's answer in thread list * fix: use braces and create explicit statement blocks * fix: subscription mobile responsive tweaks (#245) * update * fix: update * fix: responsiveness * fix: update * fix: few clean up * fix: rm unused image * fix: rm unused image * fix(impr): models enum table migrations (#247) * impr(hasura): db tables * impr(hasura): db tables * fix(hasura): user permissions * impr(hasura): sql models enum migration * fix(hasura): models_enum pk * fix(hasura): ci/cd default regional log bucket * docs: bun to requirements (#250) Co-authored-by: b <b> * feat: next auth, email/pw strategy (#249) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * docs: mb sytem diagram v1.0a * feat(impr): next auth environment helper function (#251) * (masterbots.ia)-chore-auth-dependencies * (masterbots.ia)-feat-webauth-nextauth * wip(masterbots.ai): email/pw login + signup * feat-login ui * feat-login-component+page * feat-login-component+page * feat-auth-middleware.ts * feat-auth-nextauth + googleauth * feat-auth-coderabit-feedback * feat-auth-callback + elements added * wip(webapp): email/pw login+signup * feat:add toke storage for webauth * feat:updates webauth * feat:updates webauth * fix(masterbots.ai): blankBot fetch * feat:protecting env --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Romero Lucas <andre.rlucas@outlook.com> * impr(masterbots.ai): sign up form + sign in session data * docs: claude3 project knowledge docs * fix(masterbots.ai): devMode conditional * chore(masterbots.ai): rm console.log * chore: upt default hardcoded gpt model * fix: toSlug imports * fix: typo * fix(hasura): seeds * chore(impr): MB seeds update and upgrade (#253) * wip: upt seeds * chore: rm alter and table creations * chore(impr): MB seeds update and upgrade * fix: set thread to private by default * fix: prompt row typo * chore(hasura): seeds update default thread publicity * fix(masterbots.ai): adjust arrow direction in thread list (#255) * feat(impr): Vercel AI SDK Update (#256) * chore:ai version upt * chore:ai version upt * upt-ai delete * upt-ai versions * upt-sdk-actions * upt-complete-sdk-3.3 + dev notes * upt-@anthropic-ai/sdk + MessageParam * Delete apps/masterbots.ai/apps/masterbots.ai/package.json * Delete apps/masterbots.ai/apps/masterbots.ai/package-lock.json * impr-convertToCoreMessages ternary * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * fix(masterbots): google signIn (#260) * fix(masterbots.ai): fix thread-component loop (#261) * fix:(masterbots.ai) add useScroll hook (#263) * fix:introducing Two-phase scroll * impr: new hook to handle scrolling * impr: useScroll + respo * feat(masterbots.ai): chat sidebar filtering (#264) * sidebar refactor with ai * fix: sidebar AI V - Prev Jun (#262) * fix:semistable * fix:stable v * impr:delete nonused component * fix: upt category filtering * fix typo --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: sidebar state * fix(masterbots.ai): logic typo * fix(masterbots.ai): ts typo --------- Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> * fix(masterbots.ai): bot button redirect change (#265) * wip(masterbots.ai): seo data impr (#267) * wip: seo data impr * impr(chore): ga tags * feat: add chat publicity trigger (#258) * update * feat: design thread visibilty * fix: added the backend * fix: added the backend * fix: rm files * fix: few clean up * fix(masterbots): google signIn (#260) * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * fix: update * fix: add permission * fix: update query * fix(masterbots.ai): fix thread-component loop (#261) * feat: design thread visibilty * fix: added the backend * fix: few clean up * feat: design thread visibilty * fix: added the backend * fix: few clean up * Leandro/develop (#257) * chore: create thread-component to avoid to become thread list into a client component * refactor: remove unnecesary hooks from thread component * refactor: remove unnecesary hooks on thread componen * impr(masterbots): components folder structur (#259) * impr:refactor components folders + names + imports * hotfix:chat-list useEffect dependency removal * feat: design thread visibilty * fix: added the backend * fix: few clean up * update * fix: update * fix: publicity toggle * fix: error catch in the functions * fix: observations * fix: design impr * fix: thread pop-up height * chore(masterbots.ai): log rm & app version upt --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(masterbots.ai): user messages ai refactor (#266) * feat:userMessages refactor + hooks and utils * upt:rm console.log * fix:rollback useAiChat hook * fix:rollback - actions * fix(masterbots.ai): sidebar trigger * chore(hasura: s --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * wip: browse sidebar * impr(masterbots.ai): browse sidebar (#270) * fix: browse layout * feat(masterbots.ai): browse sidebar * fix: browse sidebar link condition * chore: upt signup default profile pic * chore: seeds upt (#269) * wip: seeds upt * chore(hasura): seeds review * feat(hasura): add "is_approved" thread field + seeds * chore: mb-genql upt * fix(hasura): thread param permission * fix(masterbots.ai): typo * fix(masterbots.ai): allow svg content-type * fix: chat + browse layout * style: clean up * Seo data (#273) * fix: build error * feat: Add SEO data to the chat page * feat: add default image, if not found * feat: Add SEO data to the browse page * fix: generates the image with error, in api/og * Update route.tsx fix: generates the image with error, in api/og * impr(masterbots.ai): title impr prompt * impr(masterbots.ai): improve current features v2 (#274) * add-impr-chat-prompt-footer-header-disclaimer * add-impr-chat-prompt-footer-header-disclaimer * add-UI-upt * add-UI-upt * add-action-prompt * add-clickable-upt * add-clickable-upt * Masterbots/fix redirects (#275) * fix:avatar-redirects * fix:avatar-redirect * fix(masterbots.ai): upt components/ui/button.tsx Coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix:URL correction --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] feat: wordware api (#276) * feat: add wordware api + vercel sdk strategy * feat: add wordware api + vercel sdk * wordware describe feat * wordware run + interface * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * impr(masterbots.ai): upt /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(masterbots.ai): typo /api/wordware/describe/route.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * doc: mb system diagram upt * wip: icl calls integrations * impr(masterbots.ai): permission for thread & user action mode (#281) * update * feat: added permissions & new column * fix: rm unnessecary files * fix: rm permission check * feat(masterbots.ai): create password recovery (#282) * feat:add-recovery-strategy * chore:add nodeemailer * upt:hasura * upt:hasura * upt:gmail service * feat(hasura): otp, token table + junction w/user + mb-genql gen * feat:add recovery password API * fix:ai suggestion + UX * feat:improve ux show password feat * chore:env sample * chore:useSetState * chore:roles --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] impr: WW API sanitize and keep alive (#284) * keep-alive + API sanitize + timeOut guard * impr streamAndValidateResponse fn * wip(masterbots.ai): impr createImprovementPrompt * style(masterbots.ai): chat loading states comments * feat(masterbots.ai): add admin mode to approve thread (#283) * feat:added mode toggle and approve btn * feat: added migration for user role * feat: user role flow implet * fix: impr admin approve process * fix: clean up * fix: toggle CTA changed * fix: update * fix: update * fix: observ * fix: obs clean up * fix: update * fix: clean up * impr(masterbots.ai): alpha metadata chatbot labels (#288) * wip: metadata chatbot labels * wip(masterbots.ai): chatbot metadata labels * impr(masterbots.ai): gen chatMetadata * impr: simplifying prompt defitions + biome.json base config * impr(masterbots.ai): recursive improved text prompt * style: code comments + eslint chk * impr: biome.json config * fix(masterbots.ai): conflicts typo fix * style(impr): cleanPrompt + followingQuestionsPrompt relocation & cleanup * doc: map system (simplified) * fix(masterbots.ai): sideBar updating URL (#286) * fix:sideBar updating URL * feat: coderabbit-ai suggestions * fix: Implement auto-expanding sidebar categories and chatbot highlighting based on URL * feat: optimize sidebar navigation with Link * feat: thread options (#287) * feat: added verified and label to the options * usethreadvisibility as context * feat: added option design and functions * fix: clean up * fix: update * fix: update * fix: obsv * fix: merge and update * fix: update the delete popup * fix: observ * fix: update * fix: delete thread flow * update * fix: update * fix: types * fix: chatbot not required * fix: testing * fix: rm bun.lock * fix: clean up * fix: update * fix(masterbots.ai): temp freezing next version --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] feat: email verification (#289) * feat: email verification * feat: email verification * feat: email verification * upt:build * feat: handle error redirection * chore:cron task * upt: cron blocking instead erasing * feat(hasura): create social following table. (#292) * feat(db): create social following table. * create user following and followers relationships. * fix(db): ensure users can only manage their own follow relationships. * feat(db): social following and user table permissions improvements. * feat(db): improving social following table with timestamp and idx. * impr(db): permissions and tracked object relationships. * impr(db): avoid self follow. * chore(masterbots.ai): guard WordWare for prod routing * [masterbots.ai] fix: public/private tag bg on dark mode (#294) * fix: tag bg * fix: text color * fix: browse page error * fix: debugging * fix: debugging * fix: debugging * fix: added func to generate short link * fix(hasura): upt user permissions (#296) * update user permission * fix: reverse the following table * fix(hasura): build error (#297) * fix: error build * fix: reverse select perm * [masterbots.ai] feat: thread list display + components comments for ai (#299) * merged from develop * feat:add new ui-thread-representation-browse * feat:add comments for ai - C * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add comments for ai - b/p * feat:add app theme colors effects * feat:add comments for ai - b/p * [masterbots.ai] feat: chatbot search tool v0.1a (#295) * wip: chatbot search tool * wip(impr): ww api + chat ui tweaks * fix: init sidebar load state * fix: nesting layout * fix: thread-popup ui header * wip(impr): chatbot tooling * impr: loading state + debug chatbot tools * wip(fix): nodejs context * fix(temp): rm edge runtime api config * [masterbots.ai] feat: reorganize navigation menu for mobile view (#298) * feat: reorganize navigation menu for mobile view * UI: add sideBar style * feat: add link profile and logout icon * Update profile-sidebar.tsx Tailwind class fix * [masterbots.ai] feat: UI + Logic Improvements (#301) * feat:impr responsive * feat:impr password strenght checker * feat:impr responsive * upt-build * feat:respomsive tweask * feat:back arrow aria label * fix:chat mobile layout * fix:code section * fix:chat pannel * fix:chatBot redirection * feat:restore appConfig header * [masterbots.ai] fix: restore desktop navigation link - browse section (#303) * fix:restore desktop navigation link - browse * fix:formating * feat:yellow combobox btn (JUN-REQUEST) * glowing effect variant * upt:removed /b navigation as original v * feat:powerup mode + provider * [masterbots.ai] fix(impr): browse and chat content search (#304) * feat:browse title and content search * feat:browse title and content search * fix:typo * impr:reusable non result component * feat:skeletons * feat:guard * fix:skeletons * fix:chat searching * fix: add accent colour --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * [masterbots.ai] impr: seo sitemap (#306) * chore: sitemap creation * chore: add description based on category * chore: update queries in services * chore: truncate text * impr: upt (browse)/[category]/[threadId]/sitemap.ts coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: ai tools (#302) * wip: ai tools * fix: WW json regexp * impr: simplifying main ai call * wip(fix): chat component re-render + cleanup * impr(refactor): chat hooks * fix: ts build * fix: ts build * fix: ts typo * fix: typo * impr: ai feedbacks * [masterbots.ai] wip(impr): web search (#309) * impr: web search tool call * fix: colour values * fix: typo * impr: code suggestions * fix: class name typo * wip(fix): web search false positive response + webSearch context * fix: web search callback * fix: typo * feat: profile page (#300) * feat: user card * fix: update * merge develop && update * feat: user generate bio & favourite topic * fix: update user card * feat: added profile sidebar * fix: update * update * update * update * fix: fetch approved and public threads * fix: fetch approved and public threads * update * fix: clean up and update * update * make fetch user work with bio * update * update * design updating * update * update * fix: few changes * update * fix: design update * fix: footer in layout * fix: update * fix: resercation * update * profile upload * feat: move the cloudinary key to env * fix: layout * fix: layout update * [masterbots.ai] fix: shallow routing for category & chatbots for chat & profile page (#313) * update * feat: added shallow link to the sidebar link * update' * fix: routing and content fetching * fix:update on routing * fix:update * update * update * update * fix: clean up * update * update * [masterbots.ai] feat: update ChatChatbotDetails (#314) * feat: new bot profile - chat * chore: dev comments * chore: white bg bot avatar * feat: add skeleton bot profile * [masterbots.ai] feat: include custom settings options (#317) * feat:relocation of theme switch(jun) * feat: create font-size accessibility provider(jun) * feat: r-sidebar theme switcher relocation + skeleton * feat: impr add rem instead px * [masterbots.ai] feat: integrate drizzle ORM (#320) * feat: create mb-drizzle package initial structure * feat:(masterbots.ai) add drizzle endpoint + service * chore: include database url * chore: upt mb-drizzle * feat: refactor drizzle config + generations * chore: impr migrate * chore: add working drizzle connection + migrations * feat: add centralized actions * chore: add ai review recomendations * chore: webSearch feature flag + use cloudinary upload preset * fix: responsive sidebar fix * fix: ts chk build * fix: sidebar async call * fix: ts build * chore: typo * [masterbots.ai] fix: browse category navigation (#316) * update * fix: rm category * update * fix: pop up on the user threads * update * update clean up * update * fix: clean up * fix: clean up and update * fix: update * fix: popup on navigation * fix: update * update * update * update * clean up * update * merge * fix: hasura thread delete + user dup permissions (#330) * [masterbots.ai] feat: onboarding bot profile variants (#324) * add chatbot-details and browse-details variants * feat: add bio generation * feat: chat profile bg * chore: update bot profile designs * chore: remove internal padding from cardHeader component * impr: iconography + border thickness * fix: numberShortener util fn --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: user following (#319) * update * added follow user * update * fix: upt hasura metadata databases, public_social_following.yaml coderabbitai code suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: upt masterbots.ai lib, utils.ts coderabbitai suggestion. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: user card * update * fix: permission * update * fix: added more column for chatbot followee * fix:foloow chatbot implementation * update * threads by following user/bots * update * update * update * update * update * update * update * update --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * [masterbots.ai] impr: new sonner (#334) * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * fix: overflow of the width of the sonner * chore: add new icons * feat: Sonner custom hooks and setup * feat: use useSonner hook throughout the app * chore: use hook sonner * refactor: changes according to coderabbitai * refactor: update use of sonner * chore:remove icons and use lucide icons * chore: Using Lucide Icons * chore: bun pkg mngr upt * Standardize url building using urlbuilders utility (#341) * fix: update url * fix: url update * update * [masterbots.ai] impr: og Image api dynamic to be useful without thread ID (#335) * update * fix: make OG image use default * fix: update * fix: update * fix: obs * fix: update * fix: added og to browse and chat * update * update * update * fix: provider types error * fix: updfate UUID * fix: update UUID * [masterbots.ai] docs: hook useSonner (#343) * chore: document hook useSonner * refactor: document hook useSonner, according coderabbit * impr: web search response (#310) * impr: web search response * refactor: extracting clickable generation logic * refactor: extracting clickable generation logic * fix: webSearch clickable text + reference links * chore: fix build * feat:(impr) stable version link to references format step 1 * feat:(impr) stable version link to references format step 2 --------- Co-authored-by: Bran18 <andreyfdez18@gmail.com> * [masterbots.ai] refactor: prelaunch ux/ui changes (#336) * refactor: replicate tooltip effect in desktop bot chatbot details * fix: add guard and removed re-render * fix: refactor mobile bot chatbot details * refactor: make chatPannel bigger * chore:add new bot card design + sidebar hover color * chore: delete public and private sw + icons * chore: include public + delete extra actions * chore: add sidebar bg * add sidebar new styles + lib fn * feat: add select bot * chore: cleaning * fix: build - removing BotMessageSquareIcon * fix: types/node version + node min ver req --------- Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> * [masterbots.ai] feat: continuous thread ui functionality (#340) * wip: continuos thread logic and functionality. * feat: updating parent thread functionality. * feat: continuous thread UI and finalize functionality. * fix: lowering resolveThreadId logic complexity. * Update apps/hasura/migrations/masterbots/1736934906237_set_fk_public_thread_parent_thread/down.sql Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update apps/masterbots.ai/lib/hooks/use-mb-chat.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: ts build --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] fix: refactored components - pre icl v3 (#348) * chore: add refactored components - pre icl v3 * chore: add navigation color + text-input color * fix: type * wip: header active state * fix: them toggle --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: icl v1a (#344) * wip: vercel ai sdk upt * wip: icl web feature * chore: icl hasura migrations, metadata and seeds * chore: genql gen * impr: chat opt separator render * impr: accordion chevron pos * impr: chat-list space * Fix observations from Jun (#353) * update * fix: update * fix: added empty state * fix: rm favourt and added card empty state * fix: hide sibe category without threads on user profile * fix: update * fix: update * [masterbots.ai] fix: reduce prompt input validation * fix: hasura moderator augmentedFrom msg prop * impr: ai prompt examples flow * fix: hasura moderator role thread upt permissions * [masterbots.ai] feat: chatbot following + thread highlight + bot thread page to blog (#337) * update * feat: added chatbot follow function to other component * update profile thread * thread highligh * thread highligh update * update * fix: thread blog * fix: follow chat bot * update * fix: observations * fix provider types issue * fix provider update * feat: update blog template * fix: rm p tag from list items * fix: merge * fix: rm parentid and continiue reading * update * update * merge * fix: generated types * update * updatd * update code * impr: profile page layout * fix: mg-genql gen ts --------- Co-authored-by: Roberto Lucas <andre.rlucas@outlook.com> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * [masterbots.ai] fix: init threads render + icl init cleanup (#354) * wip: fix init threads render + icl cleanup This fixes the following issues: 1. Reduced the amount of re-renders when sending the new data. 2. Clean up the ICL functions and types. 3. State management for the user-thread-panel. 4. Debug the re-rendering uissue that is replacing the main thread content. 5. Debug opening a new thread with the new ICL system. They show in the list but not returning the messages when opening it up. 6. Few code clean ups. * impr: thread list re-render in chat page * fix: initialMessages in useChat * fix: hasura moderator role thread upt permissions * impr: thread list re-render * fix: markdown pkg ts * fix: markdown pkg ts * fix: downgrade react-markdown (#358) * fix: downgrade react-markdown * fix: downgrade react-markdown * fix: markdown dep version + layout thread list ui * impr: gray-ish overlay bg rm * chore: console log rm --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: icl seeds v2 (#357) * chore: upt hasura icl seeds * chore: chat legacy table rm * chore(wip): icl seeds curation * chore: upt icl init seed pt2 * chore: upt icl init seed pt3 * chore: upt icl init seed pt3 * chore: upt icl init seed pt4 * fix: cat + chatbot seeds revision * chore: tag seeds note upt * fix: drop and create chatbot_domain table (#360) * fix: drop and create chatbot_domain table * fix: chatbot_domain permissions * fix: SQL typo * [masterbots.ai] feat: improve common components and features (#356) * fix: sidebar * feat: add DeepSeek integration * chore: wip accordions * fix: include popup accordion * chore: add shared accordion to thread list * fix: extra space * fix: extra space * chore: add tabs effect * chore: add colors based on routes * chore: add colors based on routes --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: useRouter import * [masterbots.ai] fix: sidebar category render (#362) * fix: sidebar category render * docs: toggleChatbotSelection * [hasura] chore: label + label_chatbot_category_domain dropping tables migration (#361) * fix: fetch chatbotDomain * [hasura] chore: rm wip example seed part * chore: rm legacy tables + fix getChatbotMetadata props (#363) * chore: rm legacy tables * fix: getChatbotMetadata * fix: chatbotMetadata ts * wip(refactor): icl init tags & categories fetch * chore: bun.lockb upt * fix: hotfix build error * impr: icl metadata requests v1 (#365) * wip: icl fetch + meta prompt impr * impr: sidebar paddings * wip: icl fetch + meta prompt impr * wip: icl fetch + meta prompt impr * impr: icl metadata request v2 (#366) * wip: icl fetch + meta prompt impr * fix: icl fetch + meta prompt impr * impr: icl output + prompts * chore: console.log rm * chore: console.log icl metadata devMode * [masterbots.ai] test: sytem prompt as user role * fix: show sidebar in profile (#364) * chore: clickable responses update * [masterbots.ai] refactor: use chat hook context + state management perf (#369) * chore: system prompt as system role * refactor: use-mb-chat to context * fix: mbchat provider location * impr: profile page scroll & footer position (#367) * update * fix: update * update * update * fix: profile page scroll and footer positioning * fix: profile sidebar * update * update * Revert "update" This reverts commit ef7ee8c. * Revert "Revert "update"" This reverts commit 553f82f. * Revert "Revert "Revert "update""" This reverts commit c645eca. * fix: profile page footer positioning * fix: visitor should be able to scroll through the categories * fix: profile page side bar * fix: rm loading when user not logged in * fix: update * [masterbots.ai] fix: clickable text feature (#372) * fix: accordion arrow * fix: clickable text formating * wip: fix thread load (#373) * wip: fix thread-list load * fix: continuous system prompt context * fix: render flickr + followup question logic impr * impr: prompt tags segmentation * chore: impr following question prompt * feat: public continue thread (#375) * refactor: integrating chatPannelHeader into chatPannel * chore: update browse-chat-message with shared accordion * chore: continue conversation + full conversations fix * fix: left align text * [masterbots.ai] fix: show appropriate bot cards in the user thread list (#368) * update * fix: update * update * update * fix: filter category & chatbot by userId on profile page * fix: hide empty chatbots * fix: followee permission error as moderator to follow and unfollow (#374) * update * fix: update * update * update * fix: permission issue for moderator when following other user * fix: shift on user card when loading or empty * update * [masterbots.ai] fix: isNewChat guard + continuous thread messages + power up prompts (#377) * fix: thread render at pop-up close * impr: getRouteType + chat layout * wip: isNewChat state * impr: prompt tags segmentation * fix: chat messages list render + open last according by default on new responses * impr: thread list render guard * feat(wip): isPowerUp mode * impr: memoizing getChatbotMetadata * fix: grabbing previous messages, continous chat * chore: add todo comment * impr: previous thread ui + coderabbitai observations * fix: previous conversation re-render * doc: useEffect biome-ignore * impr: deep obj compare for msg pairs * fix: ts build * fix: ts build * [masterbots.ai] refactor: useScroll hook (#376) * chore: refactor useScroll * chore: refactor useScroll * chore: refactor useScroll * Delete apps/masterbots.ai/lib/context/thread-context.tsx * chore: test commit * fix: import type * chore: add clearTimeout * chore: add destructuring * feat: update use-mb-scroll * feat: update thread component --------- Co-authored-by: Brandon fernandez <brandonfdez@Brandons-MacBook-Air.local> * [masterbots.ai] fix: chat stream render (#380) * fix: chat stream render * fix: typo * chore: chatbot prompts init config + active thread hotfixes (#378) * wip: chatbot prompts init config * wip: upt init config seeds, adding prompt configs * chore: upt init config seeds * fix: resetActiveThread guard * impr(wip): masterbot config prompt * chore: icl data curation, domain + category + sub-category * chore: init domain seeds curation * fix: moderator + user role table selection * impr: web prompt config + fix thread list render + code comments * fix: coderabbitai observations * [hasura] chore: upt user insert rows seed * fix: conflict fix --------- Co-authored-by: Gabo Esquivel <contact@gaboesquivel.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: Nathanael Liu <supernathanliu@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Anouk Rímola <77553677+AnoukRImola@users.noreply.github.com> Co-authored-by: Trivium <25100787+Nemunas@users.noreply.github.com> Co-authored-by: Leandro Gavidia Santamaria <93232139+leandrogavidia@users.noreply.github.com> Co-authored-by: Jun Dam <jun@bitcash.org> Co-authored-by: Luis Carrión <41096968+luighis@users.noreply.github.com> Co-authored-by: Marco Ledezma <marcoledezmacordero09@gmail.com> Co-authored-by: Bran18 <andreyfdez18@gmail.com> Co-authored-by: sheriffjimoh <sheriffjimoh88@gmail.com> Co-authored-by: Brandon fernandez <brandonfdez@Brandons-MacBook-Air.local>








Summary by Sourcery
Introduce onboarding bot profile variants and enhance the UI components for better user experience and responsiveness. Refactor components to support different variants and improve layout for both mobile and desktop views. Update the ShareLink component to handle different states and improve icon color transitions.
New Features:
Enhancements:
Summary by CodeRabbit
Release Notes
New Features
BrowseChatbotDetailscomponent with a newvariantprop for improved rendering styles.BrowseChatbotDetails.BrowseChatbotDetailsbased on chatbot availability.Improvements
BrowseChatbotDetailsandShareLinkcomponents to enhance user experience and accessibility.ChatChatbotDetailsandShareLinkcomponents.Bug Fixes
copyToClipboardfunction within theShareLinkcomponent.Dependency Updates
lucide-reactdependency version to allow for newer compatible versions.