Skip to main content

3 posts tagged with "frontend"

View All Tags

Release v1.12.1

ยท One min read
Eugenio
Staff Engineer

BoatyBall Release Notes


๐Ÿงฉ Overviewโ€‹

This is a quick fix release (v1.12.1) focused on synchronization issues, reservation flow optimization, and UI improvements for unpaid reservations and map visibility rules.


๐Ÿž Bug Fixesโ€‹

Issue #1 โ€” UI/Backend version synchronizationโ€‹

  • Fixed mismatch between UI and backend release versions.
  • Restricted backend access from outdated UI versions to ensure compatibility and stability.

Issue #2 โ€” VIP / non-VIP map browsing rulesโ€‹

  • Fixed map visibility rules for VIP and non-VIP users.
  • Ensured reservations are hidden outside non-reservable time windows.
  • Improved consistency of access control across map layers.

โœจ Featuresโ€‹

Issue #3 โ€” Reservation backend optimizationโ€‹

  • Removed redundant backend calls in reservation payment flow.
  • Improved performance and reduced unnecessary API traffic in Boater reservation workflow.

Issue #4 โ€” โ€œPayโ€ button for unpaid reservationsโ€‹

  • Added Pay button to reservation details screen for unpaid reservations.
  • Improved UX by providing direct payment access alongside reservation details.

๐Ÿท๏ธ Tagsโ€‹

bugfix, feature, backend, frontend, payments, reservations, optimization, ui

!release_date: 2024-09-10

Release v1.12.0

ยท 3 min read
Eugenio
Staff Engineer

BoatyBall Release Notes


๐Ÿš€ New Features:โ€‹

UI โ€” Google Maps integration upgradeโ€‹

  • Integrated new React-based Google Maps library.
  • Improved clustering and rerendering performance.
  • Introduced two map types: road and hybrid.
  • Improved labeling for mooring balls and POIs.

Backend โ€” Common tracking moduleโ€‹

  • Introduced shared tracking system for backend events.
  • Adaptive UI refresh rate based on mooring reservation activity.
  • Reduced network payload by sending only changed mooring ball states.
  • Improved mooring ball listing performance by ~2ร— during extended sessions.

New mooring ball typeโ€‹

  • Added support for Unaffiliated mooring balls (outside BoatyBall system).

Backend โ€” Anti fast-blocking protectionโ€‹

  • Prevented rapid API-based blocking of mooring balls.
  • Improved reservation integrity and fairness.

Feature โ€” Owner & Manager management improvementsโ€‹

  • Owners can now manage managers across all locations regardless of root location restrictions.
  • Support for individual location assignment per manager.
  • Added bulk removal of all locations from a manager.

Feature โ€” Reports & scheduling alignmentโ€‹

  • Backend collection service rescheduled to 11:30 with 10-minute intervals for improved alignment with payment timing.

Feature โ€” Optional geo dataโ€‹

  • Boater requests no longer require geo information for balls and POIs.

Feature โ€” User experience improvements (Boater)โ€‹

  • Added โ€œUnpaidโ€ prefix below mooring balls until payment is completed.
  • Added notification for reservation cancellation when unpaid reservation expires (after 4 minutes).

๐Ÿž Bug Fixesโ€‹

Issue #50 โ€” POI redirect infinite loadingโ€‹

  • Fixed infinite loading when redirecting to non-existent POI.

Issue #51 โ€” Non-existent mooring ball displayโ€‹

  • Fixed infinite loading screen when accessing invalid ball IDs.

Issue #53 โ€” Owner create mooring ball default location errorโ€‹

  • Fixed issue where default location was missing on direct page load or refresh.

Issue #54 โ€” Location tree UX issueโ€‹

  • Made root locations foldable in Admin panel to improve navigation in large datasets.

Issue #152 โ€” Hidden mooring ball exposureโ€‹

  • Fixed security issue allowing hidden mooring balls to be accessed via direct API calls.

Issue #153 โ€” Incomplete location tree in Adminโ€‹

  • Fixed issue where only first 4 levels of location hierarchy were displayed.

Issue #154 โ€” NULL check-in/out time errorโ€‹

  • Fixed NULL values during child location creation in Admin/Owner workflows.

Issue #56 โ€” Hidden ball access in reservationsโ€‹

  • Prevented hidden mooring balls from being shown in Reservations panel.

Issue #57 โ€” Incorrect password session handlingโ€‹

  • Fixed improper session handling after incorrect password entry.
  • Improved authentication failure behavior.

Issue #6 โ€” Existing user invite bugโ€‹

  • Fixed issue allowing incorrect invitation flow for already active users.

โœจ Other Improvementsโ€‹

Owner/Manager backend enhancementsโ€‹

  • Improved manager assignment logic across all locations.
  • Enabled granular and bulk manager location control.

Geo request optimizationโ€‹

  • Made geo information optional in Boater API requests.

๐Ÿท๏ธ Tagsโ€‹

backend, frontend, maps, performance, reservations, security, admin, owner, boater, bugfix, feature, tracking, api

!release_date: 2024-09-01

Release v1.13.0-cool

ยท 4 min read
Eugenio
Staff Engineer

This release introduces major improvements to location-level promotional capabilities, enhanced URL linking for mooring balls, and a series of backend and boater-facing bug fixes. It strengthens reservation consistency, improves targeting logic, and refines the user experience for both unaffiliated and paid mooring interactions.

New Featuresโ€‹

Location-Level URL Linking for Mooring Ballsโ€‹

  • Introduced direct URL links for individual balls at the location level.
  • Enables deep linking into specific mooring ball details from external or internal navigation sources.
  • Improves shareability of specific balls and enhances navigation precision across the platform.

Promotion Feature for Unaffiliated Ballsโ€‹

  • Added promotional support for unaffiliated mooring balls at the location level.
  • Allows non-affiliated or external balls to be highlighted within the BoatyBall ecosystem.
  • Supports increased visibility of partner or third-party mooring assets.
  • Enables location-based promotional campaigns and enhanced discovery.

Feature Enhancementsโ€‹

Boater Experience Improvementsโ€‹

"Not Part of BoatBall" Badge

  • Introduced a dedicated badge for unaffiliated mooring balls.
  • Clearly indicates when a ball is not part of the BoatyBall network.
  • Improves user clarity and reduces booking confusion for external listings.

Bookings / Payments Rebranding

  • Updated terminology and labeling across booking and payment flows.
  • Aligns UI language with current product positioning and future scalability goals.
  • Improves consistency across modules and reduces ambiguity in financial interactions.

Swain Sailing Charter Integration

  • Added "Swain Sailing" as a recognized charter company in backend systems.
  • Expands supported charter ecosystem and improves data completeness for affiliated operators.

Bug Fixesโ€‹

Backend Fixesโ€‹

VIP Future Reservations Propagation Issue

  • Fixed delayed or inconsistent propagation of VIP future reservations.
  • Ensures immediate system-wide visibility once reservation is created.
  • Improves reliability for high-priority booking workflows.

Advanced Reservation Date Mismatch

  • Fixed issue where "to" date could be earlier than "from" date in advanced reservations.
  • Enforces correct temporal validation in backend logic.
  • Prevents invalid reservation ranges from being processed.

User Targeting Misclassification

  • Fixed issue where logged-in users were incorrectly cast as boaters.
  • Replaced isLoggedInUser() logic with TargetUserType() validation.
  • Ensures accurate user segmentation across application modules.

Sorting Logic Failure in Backend Queries

  • Fixed bug where sorting by unsupported event criteria defaulted inconsistently to current time.
  • Stabilized sorting behavior for unsupported or missing criteria inputs.
  • Prevents unpredictable ordering in API responses.

Boater-Facing Fixesโ€‹

Unpaid Own Balls Border Styling

  • Updated visual styling for unpaid owned balls.
  • Replaced red dashed border with neutral blue styling.
  • Reduces visual misinterpretation of unpaid status as an error condition.

Reservation Error Messaging Improvement

  • Improved feedback for failed peak-time reservation attempts.
  • Replaced vague "Create reservation error. OK" messaging with clearer failure communication.
  • Enhances user understanding during high-demand booking scenarios.

External App Linking Fix

  • Fixed broken external linking to BoatyBall app for balls and points of interest.
  • Ensures deep links correctly open the intended in-app context.
  • Improves cross-platform navigation reliability.

Backend Improvementsโ€‹

  • Strengthened validation rules for reservation time windows.
  • Improved consistency of user role classification across services.
  • Enhanced promotional flag handling for location-based assets.
  • Optimized routing logic for external entity linking.

System Behavior Improvementsโ€‹

  • More consistent handling of unaffiliated vs affiliated mooring assets.
  • Improved reliability of reservation state synchronization.
  • Reduced edge-case failures in sorting and filtering APIs.
  • Better alignment between frontend expectations and backend response structure.

Impact Summaryโ€‹

Boatersโ€‹

  • Clearer distinction between affiliated and unaffiliated mooring balls
  • Improved reservation feedback during peak times
  • More intuitive visual indicators for payment and ownership states

Operators / Admin / Backend Systemsโ€‹

  • Stronger reservation consistency and validation rules
  • Improved user targeting accuracy
  • Enhanced support for promotional content at location level

Platform-Wideโ€‹

  • More stable sorting and filtering behavior
  • Improved deep-linking and external navigation support
  • Expanded charter ecosystem support

Stability & Reliabilityโ€‹

  • Fixed critical backend propagation issues for VIP reservations
  • Improved robustness of reservation date validation
  • Reduced UI misinterpretation risk for unpaid assets
  • Stabilized external linking and routing behaviors

!title: Release v1.13.0 - Promotion / URL to Location Enhancements !tags: boating, backend, frontend, promotions, reservations, bugfix, feature !release_date: 2024-08-15 !description: Introduces location-level URL linking and promotional support for unaffiliated mooring balls, alongside backend fixes for reservation propagation, sorting logic, and user targeting improvements.