Building in Public
Changelog
Track our journey as we build for the barbershop booth rental industry.
Map Zoom Controls Visibility
Relocated zoom controls from bottom-right to top-right corner of map to prevent clipping at viewport edge. Controls now fully visible on all screen sizes with improved responsive sizing.
Owner Dashboard Welcome Section
Updated Owner Dashboard welcome section spacing to match Barber Dashboard UI consistency. Increased vertical padding (py-8) and adjusted date margin (mb-2) for better visual hierarchy.
Phone Validation Regex
Fixed syntax error in account settings phone number validation regex. Users can now properly save phone numbers containing digits, spaces, hyphens, plus signs, and parentheses.
Shop Detail Page Async Params
Fixed Next.js 16 async params handling in shop detail pages (both owner and barber). Shop IDs now properly resolve before data fetching, preventing undefined errors.
Shop Page Error Resilience
Added comprehensive error handling for fetch cancellations and storage listeners. Shop pages now gracefully handle AbortError exceptions and continuous re-renders without crashing.
Stripe Connected Banner Dismiss
Added X button to dismiss Stripe Connected banner on shop dashboard. Dismissal saves to localStorage and users can still access Stripe through Settings > Billing.
Stripe Dashboard Button
Fixed 500 error on Stripe Dashboard button with improved API key validation and user-friendly error messages when Stripe is not properly configured.
Role Switching Flow
Simplified role switching to allow unrestricted mode toggling between Barber and Owner modes. Removed all validation restrictions for seamless user experience.
Release Barber Feature
Fixed release barber function by removing reference to non-existent 'updated_at' column in shop_barbers table. Changed status from 'released' to 'inactive' and improved status to 'cancelled' for booth_rentals.
Send Offer Modal Flow
Fixed modal flashing during offer submission. Added smooth 300ms delay before closing and improved success toast with plan details. Button now shows 'Sending...' during submission.
Shop ID Undefined Navigation
Added shop ID validation with proper error handling to prevent undefined ID errors. Shop cards now safely navigate with fallback to shop_id if shopData.id is missing.
Booth Rental Query Errors
Fixed 406 errors in booth_rentals queries by changing from .single() to .maybeSingle() throughout roster management. Prevents errors when no active rental records exist.
Roster Management UI Feedback
Enhanced release barber and send offer features with clearer success messages, loading states, and error handling. Users now get immediate visual feedback for all actions.
Payment Tracking System
Fixed critical issue where booth rental payments weren't appearing in owner dashboards. All transactions now display correctly with complete payment history, earnings summaries, and barber payment details.
Stripe Webhook Integration
Resolved payment processing bug that prevented transactions from being recorded. Shop owners now see real-time payment updates and accurate total earnings in their analytics.
Subscription Cancellation on Release
When owners release a barber from their roster, their Stripe subscription now automatically cancels to stop future charges. Barbers receive an instant notification explaining the release.
Multiple Payment Support
Barbers can now make multiple payments to the same shop, allowing them to pay ahead for future months or add additional booth services whenever needed.
Back Button Spacing
Fixed layout bug in account settings where the back arrow was too close to the sidebar. Improved spacing and touch targets for better mobile experience.
Booth Options Display
Redesigned booth availability stats on listing pages with cleaner inline layout and better responsive spacing for mobile and tablet devices.
White Favicon Design
Updated app icon to professional white background with gray BOOTH emblem for better visibility in browser tabs and bookmarks across all devices.
Payment Confirmation Flow
Simplified subscription confirmation with clearer payment schedule details. Changed 'Auto-Renewal' to 'Auto-Pay' and made it crystal clear when recurring charges begin.
Gallery Photo Cutoff on Mobile
Fixed booth listing gallery images being cut off at the top on mobile devices. Optimized carousel height for perfect visibility across all screen sizes.
Coupon Code Security
Removed exposed discount codes from plan selection modal for better security. Users can still enter codes, but examples are no longer visible to everyone.
Modal Overflow Fix
Fixed plan selection modal appearing cut off with oval edges. Updated responsive sizing and border radius for clean display on all devices.
Request Management Simplified
Consolidated duplicate request sections in owner dashboard. Now shows 'New Barber Applications' and 'Existing Barber Requests' in one clear view.
Payment Button Functionality
Fixed critical bug where payment completion buttons weren't responding to clicks. All payment options (weekly, monthly, cash) now work instantly.
Owner Approval System
Fixed approve/deny buttons in shop roster management. Owners can now approve or decline barber requests from both the shop page and notifications.
Barber Shop Navigation
Fixed booth card navigation in barber dashboard. Clicking on 'My Booths' now properly navigates to the shop detail page with all rental information.
Transaction Display Design
Completely redesigned payment activity section with larger avatars, clearer transaction details, prominent green amounts, and better date formatting for easier tracking.
Barber Shop Loading Issue
Fixed infinite loading state when barbers click on shop listings. Shop details now load instantly with all booth plan information displayed correctly.
Marketing Landing Page
Launched dedicated /shops-flyer landing page for print marketing campaigns. Shop owners scanning QR codes see a conversion-optimized page highlighting key benefits and quick 3-step onboarding.
Barber Mode & Owner Mode Switching
Redesigned mode switcher to be fully interactive and easily accessible. Users can now toggle between Owner and Barber modes directly from account settings with one click.
Shop Display in Account Settings
Fixed bug where shop owners weren't seeing their shop listings in the Billing tab. Shop data now correctly displays based on current view mode, not just account role.
Professional Footer Design
Added comprehensive footer across all marketing pages with brand information, quick links for both shop owners and barbers, support resources, and legal links.
Payment & Transaction System
Fixed critical payment flow to ensure all booth rental payments are properly recorded and displayed. Shop owners now see accurate transaction history in their analytics dashboard.
Barber Onboarding & Reservations
Fixed 'No Plans Available' error when barbers click Reserve. Booth rental plans now display correctly and barbers can complete the full reservation flow seamlessly.
Platform Fee & Coupon Codes
Added transparent 2% platform fee for barbers (shop owners receive 100% of booth rent). Barbers can enter coupon codes to waive the platform fee for promotional periods.
Mobile Layout Improvements
Fixed off-center mobile layout on booth listing pages. All modals and content now properly fit the viewport with centered alignment on all devices.
Account Settings & Mode Switching
Fixed shop display in billing settings for owners and made the Owner/Barber mode switcher fully interactive. Users can now easily toggle between modes with one click.
Email Verification & Redirects
Fixed authentication redirect issue where users were being sent to preview environment instead of production site after email verification. All auth flows now properly route to boothapp.co.
Guest Booth Invitations
Shop owners can now invite barbers as guests at $0 cost. Guests join the roster immediately without payment, and owners can send paid plan offers later.
Cash Barber Option
Owners can onboard barbers with custom pricing but collect payment outside the platform (cash, Venmo, Zelle). Perfect for shops that prefer traditional payment methods.
Mobile Dashboard Layout
Fixed critical issue where content was cut off behind the navbar on mobile across all dashboard pages. Back buttons, headers, and save buttons now fully visible.
Barber-Owner Messaging
Fixed bug preventing barbers from contacting shop owners. The 'Contact Shop' button now works correctly with proper owner identification.
Design System Consistency
Standardized all buttons to rounded-full styling. Removed navbar scroll jank for buttery-smooth performance across the entire platform.
Logo Upload on Mobile
Removed forced camera capture. Users can now choose between taking a photo or selecting from gallery on mobile devices.
Gallery Photos for Shops
Shop owners can now upload up to 6 additional photos when creating their shop, giving barbers a better view of the space with drag-and-drop support and instant previews.
Custom Amenities
Create your own custom amenities when listing a shop. Add unique features like 'Espresso Machine' or 'Massage Chair' that aren't in our preset list.
Mobile Image Uploads
Fixed issue where uploaded shop logos and photos weren't displaying on mobile devices during shop creation.
Release Barber Feature
Owners can now properly release barbers from their roster. Released barbers immediately disappear from the team list as expected.
Profile Image Display
Fixed stretched and distorted profile photos throughout the app. All avatars now display correctly with proper cropping and centering.
Critical Dashboard Errors Resolved
Fixed multiple critical errors preventing barbers and owners from accessing their dashboards. Corrected router imports and authentication flows across the platform.
Profile Images Display
Resolved stretched and off-center profile images across both barber and owner modes by adding proper object-cover styling to all avatar components.
Release Barber Functionality
Enhanced roster management with proper authentication, ownership verification, and immediate UI refresh when releasing barbers from shops.
Custom Amenities Support
Shop owners can now add custom amenities beyond the preset list when creating or editing their shops (e.g., 'Espresso Machine', 'Shoe Shine Station').
Gallery Upload for Shops
Added ability to upload up to 6 additional shop photos during shop creation with drag-and-drop support and preview thumbnails.
Want to be part of our journey?
Join BOOTH →