Bicrypto 5.5.0

13 January 2025

This release has upgrade notes. Read them before updating — they describe behaviour changes that need your attention.

UI/UX IMPROVEMENTSMEGA MENUNAVBAR FIXESDARK MODEDEFAULT PAGESSEO OPTIMIZATIONFLOATING CHATBINARY TRADING

Version 5.5.0

Release Date: January 13, 2025
Tags: UI/UX IMPROVEMENTS, MEGA MENU, NAVBAR FIXES, DARK MODE, DEFAULT PAGES, SEO OPTIMIZATION, FLOATING CHAT, BINARY TRADING

Upgrade Notes

For Developers

  • Default pages now fetch from the public content API instead of admin endpoints
  • Environment variables properly configured for dev/prod API URLs
  • All default pages converted to server components

For Users

  • Default pages will now display exactly what's entered in the editor
  • SEO settings from editor are properly applied
  • Dark mode works consistently across all pages
  • Improved loading performance for default pages

Changed

Logo System

  • Size Optimization: Improved logo handling so icon and text logos are each sized appropriately
  • Dynamic Dimensions: Text logos use 180x48 dimensions for better clarity
  • Class Inheritance: The logo now respects the size it is given, for flexible sizing

Mega Menu User Experience

  • Visual Feedback: Added a background tint when no items are hovered
  • Content Padding: Optimized padding for better space utilization
  • Item Spacing: Improved spacing between menu items for better scanability
  • Overflow Protection: Long menus now scroll sideways instead of overflowing the screen

Default Pages Architecture

  • Server Components: Converted from client to server rendering for better performance
  • SEO Metadata: Implemented dynamic metadata generation from editor content
  • Reusable Components: Created a shared default page renderer for consistency
  • Content Processing: Smart content processor that preserves editor formatting while adding styles
  • Content Freshness: Default pages no longer serve stale content after an edit

Content Editor Integration

  • Exact Content Rendering: Pages now display exactly what's entered in the editor
  • No Fallback Content: Removed hardcoded fallback content (except home page template)
  • Plain Text Support: Automatically wraps plain text in proper paragraph tags
  • HTML Processing: Only adds classes to elements without existing styles

SEO Implementation

  • Dynamic Metadata: Pages fetch SEO data from backend and apply to page metadata
  • Fallback Values: Graceful fallback to default SEO values if API data unavailable
  • Keywords Support: Full support for title, description, and keywords metadata

Developer Experience

  • Environment Detection: Automatic environment detection for API URLs
  • Debug Logging: Added logging to help troubleshoot content fetching
  • Error Handling: Improved error messages and recovery strategies
  • Code Organization: Centralized page utilities in one shared component

Spot Trading Settings Relocation

  • Moved from Wallet to Trading: Spot Exchange setting relocated from "Wallet > Wallet Types" to "Features > Trading" for better logical organization
  • Renamed for Clarity: Changed from "Spot Exchange" to "Spot Trading" for clearer terminology
  • Description Update: Updated description to "Enable spot trading functionality" for better understanding
  • Settings Order: Spot Trading now appears before Chart Type in the Trading subcategory
  • Tab Naming: Improved Features tab label to "Trading & Features" to better reflect its content

Homepage Markets Section Image Sizing

  • Fixed Circular Shape: Market icons keep their circular shape on all screen sizes
  • Prevent Shrinking: The icon container no longer squashes into a pill shape
  • Consistent Sizing: Images now maintain proper dimensions even when parent container is compressed
  • Removed Redundant Styles: Cleaned up unnecessary styling on the image element

Homepage Responsive Layout with Spot Trading Disabled

  • Dynamic Content Width: Content now expands to full width when spot trading/markets section is hidden
  • Centered Layout: Hero content properly centers when markets section is disabled
  • Conditional Alignment: Text alignment, buttons, and features adjust based on spot trading status
  • Maximum Width: Centered content is width-limited for optimal readability
  • Visual Balance: Eliminates awkward empty space on the right when markets are hidden

Support Chat Widget Size Optimization

  • Button Size Reduction: Reduced the floating support button from 64x64px to 48x48px
  • Icon Adjustment: Scaled down the chat icon from 28x28px to 20x20px for proportional appearance
  • Less Intrusive: Smaller widget provides better user experience without blocking content
  • Maintained Functionality: All hover effects, animations, and gradients preserved with smaller size

Fixed

  • Full Logo Display: Fixed navbar logo appearing as small square when "Full Logo Only" setting was selected
  • Dynamic Sizing: Logo now properly displays at an appropriate height with auto width
  • Aspect Ratio: Maintained correct aspect ratio for text logos (180x48) instead of constrained square dimensions
  • Display Settings Respected: The navbar logo no longer forces square dimensions on a full logo

Admin Mega Menu Layout

  • Menu Width: Increased mega menu width to accommodate longer menu items like "Transaction Management"
  • Dynamic Width: Changed from a fixed minimum width to a screen-relative maximum to prevent overflow on smaller screens
  • Left Panel: Adjusted left panel width from 280px to 250px with proper minimum width constraints
  • Right Panel: Set minimum width of 350px for content area to ensure readability
  • Icon Sizing: Icons no longer shrink on hover
  • Text Wrapping: Menu item labels no longer wrap onto a second line

Binary Trading Dark Mode

  • Theme Persistence: Fixed navbar showing in light mode when dark mode was active on /binary page
  • Immediate Application: Added theme synchronization to prevent flash of wrong theme on page load
  • Theme Toggle: Enhanced theme toggle to immediately apply changes without delay
  • Consistent Theming: The dark and light setting is now applied consistently across the page

Floating Support Chat

  • Page Exclusions: Hidden floating support button on /trade and /binary pages as requested
  • Trading Interface: Removed distracting chat widget from trading pages for cleaner interface
  • Conditional Rendering: The support button now checks which page it is on before appearing

Binary Orders Menu Icon

  • Missing Icon: Added the missing icon to the Binary Orders item in admin navigation
  • Consistent Icons: Ensured all admin menu items have appropriate icons for better visual hierarchy

Default Pages Rendering

  • Content Fetching: Fixed pages not fetching content from the correct API endpoint
  • API URL: Corrected to use the public content endpoint instead of the admin one
  • Port Configuration: Smart detection of development vs production environment for API URLs
  • Development: Uses NEXT_PUBLIC_BACKEND_URL (localhost:4000)
  • Production: Uses NEXT_PUBLIC_SITE_URL without separate port

Default Pages Styling

  • Background Color: Fixed pages not using the proper background from the layout
  • Text Styling: Applied consistent styling to all content coming from the editor
  • Dark Mode Support: Ensured proper dark mode styling
  • Title Display: Page titles now display prominently with proper styling
  • Title Spacing: Increased margin below title for better readability

Default Editor Background

  • Unnecessary Background: Removed hardcoded background colors from default editor pages
  • Layout Consistency: Editor pages now use parent layout background for consistency
  • Mouse Wheel Scrolling: Fixed issue where dropdowns in table edit/create drawers wouldn't scroll with mouse wheel
  • Drawer Compatibility: The drawer no longer treats a scroll over a dropdown as a drag
  • Layering: Raised the dropdown so it sits above drawer content
  • Event Propagation: Scrolling inside a dropdown no longer scrolls the drawer behind it
  • Multi-Select Support: Applied fixes to both single and multi-select form controls for consistent behavior
  • Scroll Prevention: Drawer no longer captures scroll events intended for child dropdown components

Mobile Sidebar Extension Handling

  • Disabled State Consistency: Fixed mobile sidebar not respecting disabled extension states like desktop mega menu
  • Extension Accessibility: Disabled extensions are now properly non-clickable and visually dimmed in mobile menu
  • Visual Feedback: Disabled extension items are dimmed and show a not-allowed cursor
  • Background Styling: Disabled items are tinted to match desktop mega menu behavior
  • Child Menu Support: Extended disabled state handling to nested/child menu items

Extension Icons in Mobile Menu

  • Missing Icons: Extensions in mobile sidebar now properly display icons consistently with desktop
  • Icon Source Fix: Changed the Extensions menu icon to one that renders reliably
  • Visual Hierarchy: All extension menu items now show appropriate icons for better navigation

Demo Data Foreign Key Constraints

  • ICO User References: Fixed ICO demo data import failing because it referenced a user account that does not exist
  • Token Offerings: All 7 ICO token offerings now reference existing user accounts
  • Transaction Records: Updated 5 ICO transaction records to use correct user IDs
  • Database Integrity: Eliminated SQL import errors related to non-existent user references

Password Reset Flow

  • Correct URL Routing: Fixed profile security tab logout and reset password button to redirect to /reset instead of non-existent /auth/reset
  • Login Page Reference: Updated security instructions to reference correct /login path instead of /auth/login
  • Auth Modal Integration: Reset password page properly triggers auth modal with forgot-password flow when no token is provided

Undefined User ID Connection

  • Connection Guard: The live connection is now only established when a valid user ID is present
  • Provider Protection: The live data provider only starts once a signed-in profile is known
  • Safety Check: Added additional validation to prevent connecting without a user ID
  • Console Warning: Logs a warning when the connection is skipped due to a missing user ID
  • Error Prevention: Eliminates failed connection attempts made with an undefined user ID