Dreamlines — Europe’s largest cruise booking portal

What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel.

  1. my first listA rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel.
  2. my first
  3. item
  4. asfsdf
  5. fweg
  6. we
  • Voila!
  • my first listA rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel.

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.

teast

about the client

Dreamlines is the fastest-growing cruise portal worldwide. Founded in 2012, the company quickly became a leader in the European market, with Europe’s most extensive portfolio of global cruises. The company operates in 12 countries on 5 continents and offers more than 30,000 products as a cruise aggregator, including round-the-world trips and short cruises.

long story short

Two Rebbix teams joined Dreamlines in June 2022. Like the rest of the travel industry, the company was recovering from the COVID-19 pandemic. Our primary task was to stabilize their system and streamline engineering practices.

Today, our teams continue driving product management, technical decision-making, R&D, feature development, and more. Along with Dreamlines, we support the company's subsidiary brands, CruiseAway and Cruise1st, within four markets: Germany, the Netherlands, Australia, and Great Britain.

key outcomes

99.9%

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

99.9%

system uptime compared to 95% before

major

technical debt reduction

>1 minute

site loading speed

stop-loss

to keep data safe

seamless

software migration

client testimonial

team setup

2

afasfa

2

Engineering Managers

2

Front-End Engineers

3

Back-End Engineers

1

Full-Stack Engineer

1

Product Manager

1

Product Designer

1

SEO Specialist

meet the team

No items found.

what we did

Legaсy modernization. The project architecture was overcomplicated by a mix of technologies (such as Node.js, Scala, Python, Amazon, .NET, Angular, etc.), different approaches, and numerous databases. This slowed down the system and created vulnerabilities we needed to fix.  

Our team rewrote a big tech part from scratch and simplified the infrastructure, making the system easier to maintain, support, and expand. We changed two old hard-to-support databases to more performant ones and upgraded the rest. The team migrated the core Scala price formation service to Node.js to ensure the ETL process ran quickly and smoothly. This has resulted in reduced maintenance costs and significant system optimization. But most importantly, this change helped us run the price updates more frequently, which resulted in the "more live" fares and offers on the website. We also ran AB tests and improved the analytics to monitor the website's real-time performance.

Technology migration. The Cruise1st’s system was written on legacy technologies, the data depended on a third-party service, and the website was slow, loading up to a minute.

Our task was to migrate Cruise1st’s data to our own data platform and create a brand-new UI. The biggest challenge was that we needed to achieve this without access to the original code.

We eliminated unnecessary third-party services and ported nearly 30 integrations to our data platform. Now, websites work several times faster than before, and we have complete control over the prices displayed there.

API’s integration.  Dreamlines is a cruise aggregator that works with numerous cruise providers. Cruises are an old business that often uses outdated software. New technologies are implemented very slowly, so most APIs are very limited. Integration with old APIs was complicated — we needed to create a solution to manage all the necessary integrations. But in the end, we received a fast and maintainable system that seamlessly integrated all required APIs.

Online booking. Before, the only way to book a cruise was by phone — namely, by talking to salespeople. We gradually automated the process by creating online booking functionality to make more bookings without human intervention. 

We created a software wizard where users fill in names, addresses, required cruise configurations, etc. Then, the system automatically books a cruise with a cruise line. Salespeople still have to contact users to confirm booking and receive payment. However, our service significantly reduces the routine work for salespeople and fastens the booking process. 

Market support. Our client’s products operate in five markets: Germany, the Netherlands, and Australia (as Dreamlines); Great Britain and Australia (as CruiseAway and Cruise1st). We support the systems due to the laws and regulations of each country. 

Data monitoring and control. Our client faced constant data loss due to the lack of monitoring options and unreliable external cruise data APIs. Our team fixed that by adding validation steps so we could control how much data we received and check if any was missing. We also added the ability to control, operate, and keep server data. Now, we can roll back our system to any data version at any time. 

Search catalog rebuilding. The search catalog is an admin panel for salespeople to work with cruise information. It was built using two paid third-party services. Our team switched the system to one of them. This allowed us to reduce maintenance costs, optimize the system architecture, and make the system easier to maintain.

Packages. When choosing cruises, people often need hotels, flights, etc. We improved the existing functionality to allow custom services to be added directly to cruises. Now, we are working on improving and expanding this functionality. We are building auto-created packages with drinks and other services that can be added to cruises.

UX/UI. We improved the quality of pictures and maps that show cruise routes. We also updated the design to achieve a modern look and better UX. 

results

  • 99.9% system uptime compared to 95% before
  • major technical debt reduction
  • cost-efficient and less complex system infrastructure
  • boosted site loading speed compared to <1 minute before
  • expansion into new markets — support of 4 countries
  • 2 websites seamless migrations 
  • stop-loss to keep data safe

need help with your product development?

continue reading:
No items found.

book a free consultation

Set up a quick call with Taras Kunch, Rebbix's Chief Technology Officer, to discuss the challenges you're facing and get a timeline and budget estimates.

book a 30-min Calendly call

other case studies

By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.